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

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

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

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

3回答

1223閲覧

glitchでA3RTのTalk APIを使いたい

yanagiha

総合スコア4

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

1クリップ

投稿2019/10/02 08:00

前提・実現したいこと

glitchでリプライがあったら返信をするようなDiscord botを作成しているのですが、apikeyが正しいにも関わらす下記のようなエラーが出ます。Webを検索してheadersを設定するという対策もしたのですが、それでもエラーが出ます。

どのような書き方をすればapikeyを認識してくれるでしょうか?

よろしくお願いいたします。

発生している問題・エラーメッセージ

{ status: 1000, message: 'apikey is null' }

該当のソースコード

javaScript

1function talkBot(text) { 2 3 var myOptions = { 4 method: "post", 5 apikey: "apikey", 6 headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, 7 query: text, 8 }; 9 10 11 const fetch = require('node-fetch'); 12 fetch("https://api.a3rt.recruit-tech.co.jp/talk/v1/smalltalk", myOptions 13 ).then(Response => { 14 Response.json().then(Data => { 15 console.log(Data); 16 return Data.results[0].reply; 17 }); 18 });

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

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

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

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

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

guest

回答3

0

自分が作成したものでは少し手間がいるのですが、form-dataというモジュールも使って作成しました。

js

1const FormData = require('form-data') 2const fetch = require('node-fetch'); 3 4function talkBot(text) { 5 6 let formdata = new FormData(); 7 formdata.append('apikey','ここにAPIKey'); 8 formdata.append('query', text); 9 10 fetch('https://api.a3rt.recruit-tech.co.jp/talk/v1/smalltalk',{ 11 method: 'post', 12 body: formdata 13 }) 14 .then(Response => { 15 Response.json().then(Data => { 16 console.log(Data); 17 return Data.results[0].reply 18 }) 19 return; 20 }) 21

少し手間が増えますが参考程度にどうぞ...

投稿2020/05/20 23:49

yutarou12

総合スコア155

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

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

0

function talkBot(text) { /*---------------------------------------*/ /* レクエストデータ */ /*---------------------------------------*/ let formdata = new FormData(); formdata.append('apikey','<取得したTalkAPIのAPIKEY>'); //- コメント formdata.append('query',text); /*---------------------------------------*/ /* リクエスト */ /*---------------------------------------*/ fetch('https://api.a3rt.recruit-tech.co.jp/talk/v1/smalltalk',{ method: 'post', body: formdata, }).then(response => { //- レスポンス取得 response.json().then(data => { //- 返答取得 const reply = data.results[0].reply; }); }); }

別のサイトからもってきて改造してきました。
どうか参考に。

投稿2019/11/12 12:33

monsterenagy

総合スコア8

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

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

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問