我认为你在使用基本认证在jQuery中时发出的OPTIONS调用有问题。您可以通过添加一个Global.asax中到您的项目解决这个问题,并添加以下代码:
protected void Application_BeginRequest(object sender, EventArgs e)
{
EnableCrossDomainAjaxCall();
}
private void EnableCrossDomainAjaxCall()
{
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
{
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Authorization, Accept");
HttpContext.Current.Response.End();
}
}
您也可以在这里下载一个示例解决方案:http://sameproblemmorecode.blogspot.com/2011/10/creating-secure-restfull-wcf-service.html
这是更好,如果你可以在这里贴上错误的信息。 – Jack