1. ホーム
  2. javascript

[解決済み] javascript で curl リクエストを実行しますか?

2022-03-03 08:13:24

質問

jQueryやjavascriptでcurlリクエストを送信することは可能ですか?

こんな感じ。

curl \
-H 'Authorization: Bearer 6Q************' \
'https://api.wit.ai/message?v=20140826&q='

つまり、PHPではフォームの送信時に、以下のようになります。

$header = array('Authorization: Bearer 6Q************');
$ch = curl_init("https://api.wit.ai/message?q=".urlEncode($_GET['input']));
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$response = curl_exec($ch);
curl_close($ch);

私がやろうとしていることは、このcurlリクエストを実行し、jsonを返し、それをjQueryの $.get() 関数を使用します。

どのように解決するのですか?

curlは Linuxのコマンド (そして phpのライブラリ ). Curl は通常、HTTP リクエストを行います。

本当にやりたいことは、javascriptからHTTP(またはXHR)リクエストをすることです。

このボキャブラリーを使えば、まずまずの例がたくさん見つかるでしょう。 jqueryとajaxで認証ヘッダを送信する

基本的には $.ajax ヘッダーなどにいくつかのオプションを指定します。

$.ajax({
        url: 'https://api.wit.ai/message?v=20140826&q=',
        beforeSend: function(xhr) {
             xhr.setRequestHeader("Authorization", "Bearer 6QXNMEMFHNY4FJ5ELNFMP5KRW52WFXN5")
        }, success: function(data){
            alert(data);
            //process the JSON data etc
        }
})