関数は「過負荷」です(request
他の言語の用語で)。ドキュメントで詳しく説明されているように、次の3 つの署名があります。
local responsebodystring, statusnumber, headertable, statusstring
= request( urlstring ) -- GET
local responsebodystring, statusnumber, headertable, statusstring
= request( urlstring, requestbodystring ) -- POST
local success, statusnumber, headertable, statusstring
= request( requestparametertable ) -- depends on parameters
特にエラー結果に関する詳細については、ドキュメントを参照してください。
最後の形式の場合、Lua 構文では、括弧内の単一のテーブル パラメーターではなく、テーブル コンストラクターを使用して関数を呼び出すことができます。それが、使用している形式と構文です。ただし、最初の戻り値が応答本文であると誤って期待しています。応答本文は、必要に応じて要求パラメーター テーブルに示されている「シンク」関数に渡されますが、これはありません。
最初のフォームを試してください:
local resp, stat, hdr
= socket.http.request("https://www.dropbox.com/s/hfrdbncfgbsarou/hello.mp3?dl=1")