簡體   English   中英

從jQuery調用WCF Rest服務不起作用

[英]Calling wcf rest service from jquery doesn't work

我編寫了一個非常簡單的wcf rest服務,當我通過提琴手向它提出請求時,它似乎可以正常工作,但是當從JQuery調用它時卻無法使它正常工作。

服務:

[ServiceContract]
public interface IService1
{
    [OperationContract]
    [WebInvoke(Method = "POST",
                UriTemplate = "customers/{regionId}",
                ResponseFormat = WebMessageFormat.Json
    )]
    Customer[] GetCustomers(String regionId);
}

[DataContract]
public class Customer
{
    [DataMember]
    public Guid Id { get; private set; }

    [DataMember]
    public String Name { get; private set; }

    public Customer(Guid id, String name)
    {
        Id = id;
        Name = name;
    }
}

public class Service1 : IService1
{        
    public Customer[] GetCustomers(String regionId)
    {
        return new[]
               {
                   new Customer(Guid.NewGuid(), "john"),
                   new Customer(Guid.NewGuid(), "pete"),
                   new Customer(Guid.NewGuid(), "ralph")                       
               };
    }
}

我可以通過提琴手對此服務進行請求,它返回預期的json。 但是,當我嘗試通過Firebug控制台使用JQuery ajax調用它時,它總是失敗。 這里是電話:

$ .ajax({type:“ POST”,data:“ {}”,url:“ http://127.0.0.1:8081/json/customers/1”,contentType :“ application / json; charset = utf-8 “,dataType:” json“,成功:function(res){
警報('成功'); },錯誤:function(xhr){alert('failed:'+ xhr.responseText); }});

我總是收到失敗的警報,responseText總是空白。 任何想法將不勝感激。

當您說“通過Fiddler”時,是指“使用Fiddler的請求生成器”,還是“正在運行Fiddler”?

問題:您的網站在哪個URL上運行? 通常,您無法使用XHR向不同的服務器(或FF中的端口)發出XHR請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM