質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Google App Engine

Google App Engineは、Googleの管理するデータセンター上でウェブアプリケーションの開発が可能なクラウドコンピュータ技術です。Java、Python、Go用にSDKが用意されています。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

Slack

Slackは、Tiny Speckという企業からリリースされたコミュニケーションツールです。GoogleDriveやGitHubなど、さまざまな外部サービスと連携することができます。

Q&A

解決済

1回答

2459閲覧

httpリクエストで入れ子状のデータを渡す(SlackAPI)

tuki

総合スコア9

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Google App Engine

Google App Engineは、Googleの管理するデータセンター上でウェブアプリケーションの開発が可能なクラウドコンピュータ技術です。Java、Python、Go用にSDKが用意されています。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

Slack

Slackは、Tiny Speckという企業からリリースされたコミュニケーションツールです。GoogleDriveやGitHubなど、さまざまな外部サービスと連携することができます。

0グッド

0クリップ

投稿2017/06/20 13:30

編集2017/06/20 13:31

###前提・実現したいこと
Slack APIのchat.postMessage
https://api.slack.com/methods/chat.postMessage
をつかってgoogle app engineからslackへpostしたいです。

その際にattachmentsを上手くつけられないので、その点を質問したいです。

###発生している問題・エラーメッセージ
```go
v := url.Value{}
v.Add("token", "hoge")
v.Add("channel", "@"+SlackAccountID)
v.Add("text", "foo")
req, err := http.NewRequest(http.MethodPost, PostURL, strings.NewReader(v.Encode()))
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
resp, err := urlfetch.Client(c).Do(req)

とするとメッセージを送ることまでできるのですが、 attachmentsは入れ子での指定(?) のためかいろ受け渡すことができません。 どのようにすれば指定できるでしょうか? [https://api.slack.com/docs/message-attachments#attachment_structure](https://api.slack.com/docs/message-attachments#attachment_structure) なお、slackのリクエストはjson形式では送れないようです。 > Present these parameters as part of an application/x-www-form-urlencoded querystring or POST body. application/json is not currently accepted. どうぞよろしくおねがいしますm(__)m

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こんにちは。

GoにもSlackAPIにも触ったことがないため内容に踏み込んだ回答ができず申し訳ないですが、
attachmentsのデータ例とその注意書きを見る限りでは、「POSTでフォームデータとして送信するが、パラメータattachmentsはそのValueにjson形式のデータを入れる」というように読み取れました。
質問のAPIドキュメント中に以下の記述が見つかりましたので、間違いないと思います。

The optional attachments argument should contain a JSON-encoded array of attachments.

投稿2017/06/21 00:52

tamoto

総合スコア4105

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tuki

2017/06/22 14:39

そのとうりでした!ご回答ありがとうございますm(__)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問