我已经设置了一个这样的 nodejs 应用程序:
var express = require('./../../../Library/node_modules/express');
var https = require('https');
var app = express();
httpsOptions = {
key: fs.readFileSync('privatekey.pem'),
cert: fs.readFileSync('certificate.pem') // SELF-SIGNED CERTIFICATE
}
var server = https.createServer(httpsOptions);
app.get('/myservice', function(req, res) {
...
}
server.listen(8443);
我已经在我的服务器中为入站请求打开了 8443 端口。从浏览器中,如果我打开,https://mydomain/myservice:8443
我会收到来自浏览器的不受信任的连接警告,这似乎是合乎逻辑的。
然后从我在本地计算机上运行的 test.html(测试跨域问题)中,我执行以下操作:
function testService(){
var data = { some JSON };
$.ajax({
url: 'https://myserver:8443/myservice',
dataType: "jsonp",
data: data,
jsonpCallback: "_mycallback",
cache: false,
timeout: 5000,
success: function(data) {
alert(data);
},
error: function(jqXHR, textStatus, errorThrown) {
alert('Error: ' + textStatus + " " + errorThrown);
}
});
}
我的问题是这个请求超时了,我认为它甚至没有到达服务。
知道为什么吗?
每当我将此请求发送到服务器时,希望感谢您的友好响应,浏览器警告不受信任的证书会发生什么?这会停止
$.ajax()
静默调用服务器并接收响应吗?