0

您好我正在尝试访问一个 WCF 服务,该服务使用 JQuery 返回一个 JSON 数组,但它不工作。但是当我使用互联网上的 php 服务时,它可以工作。请告诉我哪里出错了?

我的 C# 类

[ServiceContract]
public interface IService1
{
    [OperationContract]
    [WebInvoke(Method = "GET",RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
    Employee[] getData();
}


[DataContract]
public class Employee
{ 
    [DataMember]
    public string id { get; set; }

    [DataMember]
    public string name { get; set; }
}

当我在浏览器中加载它时得到的响应

[{"id":"1","name":"test"},{"id":"2","name":"test"}]

php web 服务的 URL http://shell.loopj.com/tokeninput/tvshows.php

我的html代码

<script type="text/javascript">
        $(document).ready(function(){

    $.ajax({
      url: "http://localhost:51220/Service1.svc/getdata",
      success: function(result){
        alert(result);
      },
      dataType: "jsonp"
    });
    });
</script>

当我使用它时,我得到错误 0,但是当我使用 php 服务时,我得到了数组。

4

1 回答 1

1

试试下面的代码。

$.ajax({
                type: "GET",
                url: "http://localhost:51220/Service1.svc/getdata",
                processData: false,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (result) {
                    alert(result);
                },
                error: function (jqXHR, textStatus, errorThrown) {
                    alert(textStatus + ' / ' + errorThrown);
                }
            })
于 2012-06-30T18:36:33.987 回答