2012-08-02 100 views
1

我已經給出了一個JSON webservice鏈接,在這個鏈接下我們有數據並希望使用ajax jWuery在html表格上顯示它。如果我從IE下載它,它使用.json格式在本地工作,但webservice鏈接不起作用。我已檢查鏈接是否正常工作,但它在JSON查看器中工作。該怎麼辦?如何使用jQuery在JSON webservice鏈接上顯示html數據

$(document).ready(function() { 
    $.ajax({ 
     type: "GET", 
     data : "{}", 
     contentType: "application/json", 
     //url: 'myfile.json', 
     url: 'http://107.22.160.4/ICatService/Service.svc/GetEvent/10/iphone2x', 
     dataType: "json", 
     success: function(data) { 
     $.each(data.Get_TappyokaResult, function(index, data){ 
       var tblRow = "<tr>"+ 
          "<td>"+data.Back_id+"</td>"+ 
          "<td><img src="+data.Back_image+" class=rowimg /></td>\n"+ 
          "<td>"+data.Back_type+"</td>\n"+ 
          "<td>"+data.DateModified+"</td>"+ 
          "</tr>" 
       $(tblRow).appendTo(".dataTable"); 
       $('table tr:odd').addClass('oddrow'); 
       $('.dataTable tr:even').addClass('evenrow'); 
     }); 
    }, 
    error: function(data){ 
      alert("error"); 
    } 
    }); 
}); 

myfile.json本地文件---------------------------------

{ 
"Get_ICatelog_EventResult":[ 
     { 
     "Date":"26\/07\/2012", "Description":"sample event", "Event_Id":5, "Heading":"sample", "Image":"http:\/\/thisisswitch.com\/ICatalogsite\/EventImage\/fc8e84f2-6729-42c0-8e0e-c6961edd2df5.JPG", "Status":0, "Time":"14:00:00", "User_Id":10 
     } 
    ] 
} 
+0

顯示您的Web服務鏈接。也許可以使用'Ajax'。 – hekomobile 2012-08-02 16:00:56

回答

0

您使用網絡服務器嗎?如果不?確保你做到了。 file:///與ajax請求有問題。如果你是,你可能會去其他的起源。 (http://107.22.160.4)所以這是一個交叉來源問題。

ajax請求的來源需要與目標具有相同的協議(http/https)域(domain.com)和端口號(默認爲80)。

有喜歡CORS(跨源林資源共享)的變通方法提供right header信息,您將能夠在另一個起源訪問日期,但大多要求您可以將其設置在服務器端。

另一個選項是forwarding traffic在您的服務器內。

或使用php代理文件。文件訪問你的數據,你可以安全地訪問數據或修改標題,所以你可以使用CORS

這裏是php example

您還可以使用閃光燈代理或任何種類的後端語言(ASP訪問它們, JSP,...)