2013-10-30 122 views
2

我想通過javascript刪除Google聯繫人。按照谷歌聯繫人API的V3我已經定義:谷歌聯繫人「NetworkError:405方法不允許」刪除

scope to https://www.google.com/m8/feeds 

而且身份驗證的用戶,並得到了的access_token。 而就this page按v3的文檔,試圖刪除這樣的接觸:

$.ajax({ 
url: 'https://www.google.com/m8/feeds/contacts/default/full/[email protected]?access_token=ya29.AHES6ZQoqUgoYmDzXyo-WsSlKv1-_2D_HzmXuH-wBuTR3e1ADxO0VWM', 
type: 'DELETE', 
success: function(res) 
{ 
    console.log(res); 
}, 

error: function(error) 
{ 
    console.log(error); 
} 
}); 

收到此錯誤:

"NetworkError: 405 Method Not Allowed - https://www.google.com/m8/feeds/contacts/[email protected]/full/[email protected]?access_token=ya29.AHES6ZQoqUgoYmDzXyo-WsSlKv1-_2D_HzmXuH-wBuTR3e1ADxO0VWM" 

任何幫助,將不勝感激。 謝謝。

回答

1

請參閱我的回答here

利用javascript的google客戶端api。

4

遇到一些所謂CORSS (Cross-Origin XMLHttpRequest)

,如果你打開Chrome瀏覽器開發工具,你會看到瀏覽器忽略了你的「刪除」類型和發送選項來代替。

當您嘗試從其他來源調用服務器時,瀏覽器會向服務器發送一個額外的請求,其中包含數據類型爲OPTIONS的信息,以瞭解發送原始刪除帖子所需的內容。
問題是服務器不允許'OPTIONS'方法類型。 如果你問我,生病嘗試找到谷歌聯繫代理(jsonp)服務。或API

請看看這裏:https://developers.google.com/api-client-library/javascript/start/start-js

我認爲你應該使用他們的標準API爲。

+0

如何使用jsonp? –

+1

@ sufyan.shoaib - 服務器需要支持,他將不得不閱讀api文檔。因爲他沒有使用標準的API。是不可能的。我更新了我的答案,並添加了一個鏈接到api –

+0

我試圖做同樣的事情,通過調用刪除聯繫人,但試圖按照谷歌聯繫人的v3。您提供的上述URL是針對已過時的v1,即使v2已過時,並且很多(幾乎所有)現在都不適用於舊版本。 v3的谷歌聯繫人不提供一個很好的JavaScript客戶端庫來訪問v3 api調用,不幸的是 –