我想在我的Web應用程序中訪問here的Web服務。當用戶選擇物種名稱時,服務會通知名稱是否有效,作者和年份等。如何從Javascript或PHP訪問Web服務?
首先我想到了使用Javascript,因爲信息來自用戶。然後我看到了cross-domain restrictions,所以我想知道這裏最好的解決方法是什麼。根據this suggestion,我應該使用服務器端解決方法。但在這種情況下,使用php curl函數不是更容易嗎?
我想在我的Web應用程序中訪問here的Web服務。當用戶選擇物種名稱時,服務會通知名稱是否有效,作者和年份等。如何從Javascript或PHP訪問Web服務?
首先我想到了使用Javascript,因爲信息來自用戶。然後我看到了cross-domain restrictions,所以我想知道這裏最好的解決方法是什麼。根據this suggestion,我應該使用服務器端解決方法。但在這種情況下,使用php curl函數不是更容易嗎?
是的。
如果您想要可靠地做到這一點,請從您控制的計算機執行此操作。
如果您已經使用PHP,那麼cURL就是通常的HTTP客戶端庫。
也就是說,在您的服務器上使用PHP/cURL 是服務器端解決方案來解決跨站JS問題,而不是使用替代解決方法。
試試這個ajax代碼。
$.ajax({
url: 'http://localhost/webservice.php?callback=',
type: "GET/POST",
data:{data:JSON.stringify([{action:'getUserData', userId: 1234}])},
dataType: "jsonp",
crossdomain: true
});
欲瞭解更多詳情,請參閱此鏈接HTML-PHP Webservice使用AJAX與crossDomain爲TRUE。
$ .ajax假設我正在使用jquery?我不是。當我們談論JavaScript時,沒有框架應該被認爲是「顯而易見的」。 – Rodrigo
是......!?!使用PHP curl(或類似的)是「服務器端解決方法」指的是......!不清楚你的問題是什麼。 – deceze
服務器端解決方法可能與使用PHP curl函數相同。 – caulitomaz
@deceze在鏈接中顯示PHP curl不是建議的解決方法。因此我的問題。 – Rodrigo