javascript - curl post 请求 jquery 等效

标签 javascript jquery json curl

我想使用 echoprint - http://echoprint.me/start - 在发布请求中从我的计算机本地发送一个 mp3 文件,以便从他们的服务器检索这首歌的详细信息。我正在尝试在我的文本编辑器中用 jquery 编写此发布请求以检索包含歌曲详细信息的 json 对象,以便我可以在浏览器的控制台中查看它,然后使用那里的数据。他们的网站解释了如何使用以下代码在命令行中运行的 curl 来发出此发布请求。这将返回一个 json 对象,但是这是在终端中,所以据我所知对我来说用处不大。

curl -F "api_key=################" -F "filetype=mp3" -F "track=@audio.mp3" "http://developer.echonest.com/api/v4/track/upload"

我想在我的文本编辑器中使用 jquery 发出此请求,这样我就可以发出相同的请求并在浏览器的控制台中检索 json 数据。

我试过这段代码,但不幸的是它不起作用

   $.post("http://developer.echonest.com/api/v4/track/upload?api_key=############&url=http://tylergrund.com/mp3/MP3s%20from%20home/Coldplay/01%20Speed%20Of%20Sound.mp3" )
  .done(function( data ) {
    console.log( data );
  });

任何人都可以提供适当的代码。这里有说明http://developer.echonest.com/docs/v4/track.html但他们只解释了如何使用 curl 来做到这一点。任何帮助将不胜感激。我是这方面的初学者,所以请放轻松。

最佳答案

您需要 POST 参数而不是将它们添加到导致 GET 请求的 URL:

$.post("http://developer.echonest.com/api/v4/track/upload", {  
          "api_key":"############",
          "url":"http://tylergrund.com/mp3/MP3s%20from%20home/Coldplay/01%20Speed%20Of%20Sound.mp3" 
      },
      function( data ) {
                console.log( data );
      },
      "JSON" );

关于javascript - curl post 请求 jquery 等效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29200096/

相关文章:

javascript - 比较和匹配两个对象列表时防止结果列表重复

javascript - 如何清除 Shibboleth session

JavaScript:如何在更改src后获取图像的高度

javascript - 一个表情符号只能预览一次

jquery - jquery mobile gridview的onclick事件

c# - 如何从json中删除多余的封装大括号?

JavaScript:比较两个 JSON 对象的结构,同时忽略它们的值

php - Composer 在/var/www/html 中找不到composer.json 文件

javascript - 在嵌入链接中显示上传的 PDF

javascript - JQuery 中的 HTTP Get 请求到 Last.fm