我正在尝试在ASP.NET C#中构建一个简单的Web服务应用程序,并从另一个用PHP编写的项目中调用。我进行AJAX调用时遇到的问题是:
POST http://localhost:49566/WebApplication2/ReviewService.asmx/getReviewById net :: ERR_CONNECTION_REFUSED
我在Web.config中添加了“Access-Control-Allow-Origin”:
<configuration>
<connectionStrings>
<add name="localDatabase" connectionString="Server=localhost;Database=mydb;Uid=root;Pwd=gameover;" />
</connectionStrings>
<system.web>
<authorization>
<allow users="*"/>
</authorization>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />
</customHeaders>
</httpProtocol>
</system.webServer>
这是来自PHP的$ .ajax调用:
$( document ).ready(function() {
$.ajax( {
method:'post',
data: {user_id: 1},
url:'http://localhost:49566/WebApplication2/ReviewService.asmx/getReviewById',
success:function(data) {
alert(data);
}
})
});
我真的不知道这里有什么问题。谢谢你的帮助
答案 0 :(得分:0)
在Visual Studio调试器(VS2013)中运行时,我遇到了类似的问题。在调试器中,一切运行良好(在VS内部运行时),但是当我停止调试时,站点不再可用。
事实证明,它正在设置&#34;编辑并继续&#34;在ASP.NET项目上启用,默认情况下启用。关闭此设置使我的站点(或web服务)在localhost上可用,即使我停止调试器。在关闭此设置之前,我在尝试浏览网站时也获得了ERR_CONNECTION_REFUSED。这意味着你在调试时无法纠正代码,但这对我来说没问题。