2015-06-21 75 views
1

我想在ASP.NET C#中構建一個簡單的Web服務應用程序,並使用PHP編寫的另一個項目進行調用。當我做一個AJAX調用的問題,我得到這個錯誤:Web服務連接被拒絕在ASP.NET C#

POST http://localhost:49566/WebApplication2/ReviewService.asmx/getReviewById net::ERR_CONNECTION_REFUSED

我已經加入「訪問控制允許來源」在我的web.config:

<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

實際上ajax調用的是javascript(jQuery),而不是php。也許你應該正確地標記它,以獲得最佳的幫助 – jhinzmann

+0

也許我解釋了一點錯誤 - 該項目使用PHP和ofcourse ajax調用是用jquery :) – MoOoG

回答

0

我在Visual Studio調試器(VS2013)中運行時遇到了類似的問題。在調試器中,一切運行良好(當在VS中運行時),但是當我停止調試器時,站點不再可用。
事實證明,這是設置「編輯並繼續」,這是默認啓用的ASP.NET項目啓用。即使停止調試器,關閉此設置也會使我的站點(或web服務)在本地主機上可用。在關閉此設置之前,我在嘗試瀏覽網站時也收到了ERR_CONNECTION_REFUSED。這意味着您無法在調試時更正代碼,但這對我來說可以。

+0

我在同一時間運行IIS和Wamp服務器 - 我可以瀏覽到兩個本地項目 - 問題是我不能讓CORS請求返回網:: ERR_CONNECTION_REFUSED – MoOoG

+0

也許你可以嘗試添加額外的標頭,並看看它是否工作: 「訪問控制請求方法」,「\ *」 「Access-Control-Allow-Headers」,「\ *」 – Jure

相關問題