2014-01-17 53 views
16

我可以獲取使用JavaScript客戶端從谷歌雲端點的博客文章列表:如何在Google Cloud Endpoints Javascript客戶端中設置自定義標題?

gapi.client.blog.posts.list().execute(function (resp) { 
    console.log(resp); 
}); 

但我需要設置一個包含用戶令牌的谷歌雲端點請求自定義頭值(這可能是來自Facebook的訪問令牌)。我該如何使用Google的Javascript客戶端來做到這一點?我可以通過不使用Google的Javascript客戶端來解決這個問題,但我寧願使用它。

https://developers.google.com/appengine/docs/java/endpoints/consume_js https://developers.google.com/api-client-library/javascript/reference/referencedocs

編輯

看來我可以通過自定義頭值如下:

gapi.auth.setToken({ 
    access_token: 'this is my custom value' 
}); 

似乎並沒有很好的做法,但。有一個更好的方法嗎?

+0

有同樣的問題和jQuery的開放JavaScript客戶端([$ .ajax](https://api.jquery.com/jQuery.ajax/)與端點後端工作正常)。任何幸運與'setToken'? –

+0

任何運氣通常使用標題? 這是有效的,但它在令牌前附加了一個字符串「Bearer」,所以我必須做'token = os.getenv('HTTP_AUTHORIZATION')。split(「」)[1]' – EsseTi

回答

0

嘗試正常使用標題,但獲取標記並添加一個包含標記的變量,以顯示標記。

1

現在你可以做到這一點使用gapi.client.request,例如:

gapi.client.init({ 
    'clientId': 'YOUR_WEB_CLIENT_ID.apps.googleusercontent.com', 
    'scope': 'your_scope' 
}).then(function() { 
    return gapi.client.request({ 
     'path': 'http://path/to/your/endpoints/api', 
     'headers': { 'mycustomheader': 'myvalue' } 
    }) 
}).then(function(response) { 
    console.log(response.result); 
}, function(reason) { 
    console.log('Error: ' + reason.result.error.message); 
}); 

又見Getting Started頁面的谷歌API JavaScript客戶端的文檔。

相關問題