进行 ajax 调用
var request = $.ajax({
type: 'POST',
url: "http://localhost/thcstore/AJAX/AjaxHawleySS.ashx",
// url: "http://www.myrealsite.com/thcstore/AJAX/AjaxHawleySS.ashx",
data: { Name: $('#Name').val(), ShopName: $('#ShopName').val(), StreetAddress: $('#StreetAddress').val(),
City: $('#City').val(), State: $('#State').val(), ZipCode: $('#ZipCode').val(),
PhoneNumber: $('#PhoneNumber').val(), ProductType: $('#ProductType').val(), Vendor: $('#Vendor').val(), model: $('#model').val(), Issue2: $('#Issue2').val(), email: $('#email').val()
},
success: function (data){
}
});
当我在本地计算机(本地主机)上运行我的网站但不在我的真实网站上时,该调用有效。我可以导航到我的生产站点 (www.myrealsite.com/thcstore/AJAX/AjaxHawleySS.ashx),无需传递变量,并且不会引发任何 http 错误。但如果我尝试传递任何数据,它会给我一个 http 500 内部服务器错误。 ajax 调用不是来自与 myrealsite 相同的域。
最佳答案
*.ashx
无法在实时服务器上运行。经过一整天的研究,我得出的结论是,如果您的网站运行在“HTTPS”协议(protocol)上,或者您已将协议(protocol) http 更改为 https,则 *.ashx
文件不会被执行。
因此,将 https 更改为 http,*.ashx
就可以正常工作。
希望这会有所帮助。
关于jquery - .ashx 处理程序不在服务器上工作,仅在本地工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22537741/