私はslack apiの周りのラッパーであるpythonライブラリslackclientを通してslack api呼び出しを行っていました。しかし、いくつかのケースで私はURLとget/postメソッドでも従来のAPI呼び出しを行う必要があります。私は自分のボットが別のユーザーと直接メッセージチャンネルを開こうとしていました。ドキュメント - https://api.slack.com/methods/im.openは、 "アプリケーション/ x-www-form-urlencodedクエリーストリングまたはPOST本体の一部としてこれらのパラメータを表示します。application/jsonは現在受け入れられていません。slack apiがPythonリクエストライブラリを呼び出す
さて、Pythonで、私は書くことができ、
url = 'https://slack.com/api/im.open'
headers = {'content-type':'x-www-form-urlencoded'}
data = {'token':BOT_TOKEN, 'user':user_id, 'include_locale':'true','return_im':'true'}
r= requests.post(url,headers,data)
print r.text
私が得るメッセージは、私は私のボットトークンと別のユーザーIDを使用していますが、私はメッセージが「authedない」ことを知っている{"ok":false,"error":"not_authed"}
である私私が間違ったフォーマットでリクエストを送信しているのは、ドキュメントを読んでいるだけなので、ちょっと愚痴です。私はこれらの要求を正確に送信する方法がわかりません。
助けが必要ですか?
試み 'data'として' [( 'トークン'、BOT_TOKEN)、( 'ユーザ'、USER_ID)、.....] 'し、次いで'応答= requests.post(URL、データ、 **ヘッダー) ' –
それは働いた。ありがとう@ArpitGoyal –
あなたはそれをupvoteできるように私は答えを投稿する必要がありますか? –