2016-08-03 4 views
0

フォームが完成するたびにGoogle Apps Scriptを起動して、スプレッドシートのエントリをTrelloボードに移動しようとしていました。私はOAuth1フローをテストしていますが、認証方法に関係なく、POST何も(GETリクエストはこれまでのところ、cardsを除くすべてで動作していません)。私は、アプリケーションが自分のアカウント設定で必要な読み取り/書き込み権限を持っていることを確認しました。テスト目的のために認証されていてもTrello APIにPOSTできない

が、私は以下のURLを経由してTrelloでシングルユーストークンオプションを使用:

https://trello.com/1/authorize?name=SingleUseTesting&expiration=never&scope=read,write&key=MYKEY

認可は、アプリが読んで、私の口座への書き込み権限を持っていたことを示しました。

私のアカウントダッシュボードでは、読み取り/書き込みが許可されていると認証が表示されました。

私はから私のカードの応答を取得することができます:私は、次を使用してAPIのURLを経由してPOSTにしようとすると

https://api.trello.com/1/lists/LIST_ID/cards

https://api.trello.com/1/lists/57a0b90f8b1740162702fa22/cards?&name=testing&due=null&key=MYKEY&token=MYTOKEN

を私はエラーと言ってを取得しますトークンは無効です。何らかの理由で間違ったトークンをチェックしていたかどうかを確認するために他のすべてのアプリケーションへのアクセスを取り消すまでは行ったが、結果は変わらなかった。

POST URIがGoogle Appsスクリプトの​​オブジェクトを正常に送信するようにする必要がありますが、この手順を超えることはできません。私がどこに間違っているのかについての洞察?

答えて

0

解決方法はTrelloのドキュメントにありません(私が見つけることができる)ので、他の人が同じ問題に遭遇した場合に備えてここに投稿しています。

GoogleはOAuth1ライブラリのオブジェクトとメソッドを削除しているので、URLを通じてTrello APIキーの永続的なトークンを要求する方が簡単です。しかし、それを機能させるには、URLにrequest_typetokenに設定する必要があります。

承認要求は次のようになります。

https://trello.com/1/authorize?key=YOUR_APP_KEY&name=APP_NAME&scope=read,write&expiration=never&response_type=token

返されたページには、APIキーの書き込み要求を認証するために​​に含まれる文字列を持っています。

実用的なコード例はthis GitHub Gistです。

0

少し遅れましたが、ここに私が見つけたものがあります。特に指定しない限り

var url="https://api.trello.com/1/boards/MY_BOARD_ID/lists"; 

、リクエストがTrelloのAPIのデフォルトの方法ですGET:

、あなたのアプリケーションは、GETリクエストで作業している場合は、次のようになりますフェッチURLを持つ必要があります。 他の3つのタイプ(PUT、POST、DELETE)では、リクエストメソッドをパラメータとして渡す必要があります。ここで

は、それが私のスクリプトにコード化されています方法は次のとおりです。

var url="https://api.trello.com/1/cards/MY_CARD_ID/pos?value=top"; 
var options={"method":"put"}; 
var response=service.fetch(url,options); 

あなたはこのコードのスニペットに見ることができるように、実際のリクエストパラメータはURLとオプションの変数内のメソッドを介して渡されます。私の推測では、オプション変数内のペイロードオブジェクト経由で送ることもできますが、今はそれをテストするのが面倒です。 各リクエストで使用するメソッドについては、Trello APIのドキュメントを参照してください。 https://developers.trello.com/advanced-reference

私はそれが役に立ちそうです。

関連する問題