2

キャンペーンモニターからサブスクライバーデータを取得するためにGoogleスプレッドシートを使用していますが、1つの問題が発生しています

ImportJSONスクリプトの使用-http ://blog.fastfedora.com/projects/import-json

次のURLを入力しました:http:// [APIKEY]:[PASSWORD] @ api.createsend.com / api / v3 / subscribers / [LISTID] .json?email = [EMAILADDRESS]

ただし、セルに「BadRequest」エラーが表示されます。これは、このURLをブラウザに入力すると、「サイト「api.createsend.com」にユーザー名[USERNAME]でログインしようとしています」という確認ポップアップボックスが表示されるためだと思います。

これを回避する方法や、キャンペーンモニターのJSONをGoogleスプレッドシートに入れる他の方法についてアイデアを得ることができますか?

4

2 に答える 2

4

Joey @ 2014 年 3 月 19 日午後 5 時 18 分 (パーマリンクなし) からの有益なコメントをホームページで見つけました。

URL の基本認証は、スクリプトがアクセスしているスプレッドシート API によって実装されていません。Base64 でエンコードされたユーザー名とパスワードを指定して fetchOptions を渡すことで、これを回避できます。

ダミー変数を削除するように変更し、いくつかの成功を収めました。

これをImportJSON スクリプト エディター コードの最後に追加します。

function ImportJSONBasicAuthentication(url, query, parseOptions, username, password) {

  var fetchOptions = {
    "headers" : {
       "Authorization" : 'Basic ' + Utilities.base64Encode(username + ':' + password)
    },
    muteHttpExceptions: true
  };

   return ImportJSONAdvanced(url, fetchOptions, query, parseOptions, includeXPath_, defaultTransform_);
}
于 2014-05-02T15:47:18.307 に答える
0

認証画面がポップアップするという問題が発生しています。そのため、別のアプローチを試します。

API ドキュメントで説明されているように、API キーで URL を照会する代わりに、所有するサーバー上の API で利用できるラッパーの 1 つをセットアップできます。次に、そこで認証を行い(pythonの例)、独自のサーバーにリクエストを送信できます。

Flaskは非常に軽量で使い始めやすいので、このような用途にはFlaskを使用するのが好きです。

これで始められることを願っています!

于 2013-03-31T13:44:36.623 に答える