我已經搜索了這個,我一直沒有找到可以幫助我的東西,所以我appologise,如果這已發佈,我剛剛無法找到它。使用JQuery Mobile的WCF服務正在返回一個400錯誤的請求
我已經創建了一個在IIS中託管的WCF服務應用程序。目前它的基礎只是一個hello世界方法,基本上是將國家名稱及其代碼作爲json對象返回。
我也寫了一些jquery,將遠程調用該方法的目的是填充列表對象。
目前當我調用方法時,它會觸發ajax調用的成功參數並以「undefined」提醒我我不知道是什麼造成了這種情況,但它最有可能犯了一個愚蠢的錯誤。
繼承人的服務和jQuery
web配置的代碼:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="None" />
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
<standardEndpoints>
<webScriptEndpoint>
<standardEndpoint crossDomainScriptAccessEnabled="true"/>
</webScriptEndpoint>
</standardEndpoints>
</system.serviceModel>
</configuration>
service1.svc
<%@ ServiceHost Language="C#" Debug="true" Service="RestfulFlightWCF.Service1" codeBehind="Service1.svc.cs" Factory="System.ServiceModel.Activation.WebScriptServiceHostFactory" %>
service1.svc.cs {// 注意:可以使用「重構」菜單上的「重命名」命令將代碼,svc和配置文件中的類名稱「Service1」一起更改。
[ServiceContract(Namespace = "JsonpAjaxService")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class Service1
{
[WebGet(ResponseFormat = WebMessageFormat.Json)]
public Country GetCountry(string id)
{
Country county = new Country();
county.Name = "United Kingdom";
county.Id = "gb";
return county;
}
[DataContract]
public class Country
{
[DataMember]
public string Id { get; set; }
[DataMember]
public string Name { get; set; }
}
}
jQuery的
$(document).ready(
function() {
$.ajax({
type:"GET",
Data:'gb',
Url:"http://192.168.1.6:80/FlightServices.svc/GetCountry",
DataType:"jsonp",
method:"GetCountry",
success: function(msg){
debugger;
alert(msg.responseText);
if (msg.responseText) {
var err = msg.responseText;
if (err)
error(err);
else
error({ Message: "Unknown server error." })
}
},
failure: function(){
alert("something went wrong");
},
error: function(){
alert("something happned");
}
});
});
對不起,長職位,但我認爲這將有助於如果我包括我的代碼。
看的好像你是不是序列化您的數據json –
可能是一個愚蠢的問題,但我累了,不能思考直。那是在ajax調用還是在wcf服務中,我將不得不序列化它? – gilljoy
在你返回縣之前,你需要將它序列化成json ... –