繁体   English   中英

jQuery ajax在我的C#代码中向Web方法发布查询,但无法实时运行,但可在localhost上运行

[英]jQuery ajax post query to a webmethod in my c# code behind not working live, but works on localhost

我正在后面的C#代码中使用相当简单的jQuery ajax后查询到Web方法。

这在我的本地计算机上效果很好,但是当我将其移至生产服务器时,它停止工作。

我在Visual Studio的生产服务器上打开了网站,然后从那里运行它时,它可以正常工作,但是如果我在生产服务器上打开浏览器并导航到页面的URL,则无法正常工作,尽管代码显然是相同的。

没有错误消息被返回。 Ajax调用获得http 200成功代码。 唯一的区别是,当它工作时,响应对象就是所需的html字符串,而当它失败时,将返回整个页面内容。

我看到了其他具有相同问题的线程,但是它们的修复都不适用于该项目,我在下面上传了示例项目:

http://stackoverflowexample1.ultrait.net/mapsearch.aspx

我认为您面临的问题是协议,请检查并比较您的ajax和生产服务器的HTTP URL,它们是否具有相同的协议(例如,HTTP或HTTPS),如果否,那么这就是问题所在。 主机服务器协议必须与您的应用程序可能发送的任何请求相匹配,以避免混合内容冲突。任何使用HTTPS地址的页面都必须包含来自安全来源的所有内容。

Example: Ajax Request

$.post("https://sample.com/demo_test_post.asp/myMethod",
{
    name: "Donald Duck",
    city: "Duckburg"
},
function(data, status){
    alert("Data: " + data + "\nStatus: " + status);
});

主机URL也必须为https://,如果您也有http链接,这也是我认为您要解决的问题,希望我的解决方案有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM