1

GoogleブックAPIを使用してタイトル/著者別にISBNを検索するようGoogleブックスAPIにリクエストしています。UrlFetchAppはドキュメントエディタではなくスクリプトエディタで動作します

Request failed for https://www.googleapis.com/books/v1/volumes?q=Deedy%2C%20Carmen%20Agra%2014%20Cows%20for%20America returned code 403. Truncated server response: { "error": { "errors": [ { "domain": "global", "reason": "unknownLocation", 
"message": "Cannot determine user location for geogra... (use muteHttpExceptions option to examine full response) (line 55). 

これが成功し、同じデータを持つスクリプトエディタで実行されている同じ機能の実行トランスクリプトです:私は、スプレッドシート自体は同じデータでそれをテストするときには、それがこのエラーで失敗します

[16-08-05 14:39:09:772 EDT] Starting execution 
[16-08-05 14:39:10:558 EDT] UrlFetchApp.fetch([https://www.googleapis.com/books/v1/volumes?q=Deedy%2C%20Carmen%20Agra%2014%20Cows%20for%20America]) [0.778 seconds] 
[16-08-05 14:39:10:559 EDT] HTTPResponse.getResponseCode() [0 seconds] 
[16-08-05 14:39:10:559 EDT] HTTPResponse.getContentText() [0 seconds] 
[16-08-05 14:39:10:569 EDT] Logger.log([found title match for '%s': '%s', [14 Cows for America, 14 Cows for America]]) [0 seconds] 
[16-08-05 14:39:10:583 EDT] Logger.log([result: %s, [9781561454907]]) [0 seconds] 
[16-08-05 14:39:10:584 EDT] Execution succeeded [0.804 seconds total runtime] 

私は関連性がある場合はが利用可能です。

答えて

1

The URL Fetch service uses Google's network infrastructure for efficiency and scaling purposes.

そして(doc)「GoogleブックスAPIの結果は、サーバーやクライアントアプリケーションのIPアドレスに基づいて制限されています」。何らかの理由でGoogle Appsスクリプトが実行されているサーバーの場所を特定できず、エラーCannot determine user location for geographically restricted operationが返されます。 、それはのdevのサーバー上ではなく、ライブスプレッドシート上の位置を検出することができたことは、驚くべきこと

var isbnEndpoint = "https://www.googleapis.com/books/v1/volumes?country=US&q="; 
+0

、しかし、はい:これに

var isbnEndpoint = "https://www.googleapis.com/books/v1/volumes?q="; 

:あなたは、この行を変更し、パラメータcountryを送信して試すことができますこの作品は、ありがとう。 – adrusi

関連する問題