Imgur通过客户端javascript而不是node.js上传工作。慌乱

Imgur通过客户端javascript而不是node.js上传工作。慌乱,javascript,jquery,node.js,imgur,Javascript,Jquery,Node.js,Imgur,这项工作: $.post( 'http://api.imgur.com/2/upload.json', { key: 'dsfdwerwersf53534dfsfse3', image: 'http://i.imgur.com/UH17u.png' }, function( data ) { console.log( data.upload.links.origin

这项工作:

    $.post( 
        'http://api.imgur.com/2/upload.json', 
        { 
            key: 'dsfdwerwersf53534dfsfse3', 
            image: 'http://i.imgur.com/UH17u.png' 
        }, 
        function( data ) { console.log( data.upload.links.original ); }
    );
当我在Chrome的控制台中运行此操作时,imgur会立即向我发送上传图像的url:
http://i.imgur.com/KrHMY.png
。好极了

现在,我正在使用node.js在服务器端尝试同样的方法,但它不起作用:

    var 
        express = require( 'express' )
    ,   app = express.createServer()
    ,   request = require( 'superagent' );


    app.get( '/', function( req, res ) {
        request
            .post( 'http://api.imgur.com/2/upload.json' )
            .send( { key: 'dsfdwerwersf53534dfsfse3', image: 'http://i.imgur.com/UH17u.png' } )
            .end( function( data ) {
                console.log( data.upload.links.original );
            });
    });

    app.listen( '8080' );
当我运行node.js应用程序时,imgur返回以下响应:

text: '{"error":{"message":"No API key was sent, and no user is authenticated","request":"\\/2\\/upload.json","method":"post","format":"json","parameters":"image = {\\"key\\":\\"dsfdwerwersf53534dfsfse3\\",\\"image\\":\\"http:\\/\\/i.imgur.com\\/UH17u.png\\"}"}}',
关键部分如下:
未发送API密钥
。为什么imgur不能识别我用
POST
发送的


我尝试了使用
请求
超级代理
模块。我觉得自己很傻,无法理解为什么这么简单的东西不起作用。欣赏任何指点。

jQuery有时会有太多的魔力,以至于很难看到它

在这里,我敢打赌两件事,我已经有一个月没用superagent了,我犯了这样一个愚蠢的错误,这让我很伤心

但在这里,我打赌主体是一个字符串,最多是一个json或您的对象。 默认情况下,JQuery的urlencode与大多数API所希望的POST正文一样。 使用


jQuery有时会有很多魔力,以至于很难看到它

在这里,我敢打赌两件事,我已经有一个月没用superagent了,我犯了这样一个愚蠢的错误,这让我很伤心

但在这里,我打赌主体是一个字符串,最多是一个json或您的对象。 默认情况下,JQuery的urlencode与大多数API所希望的POST正文一样。 使用


你在30秒内完成了我在4小时内做不到的事情。工作很有魅力,谢谢伙计。你在30秒内完成了我在4小时内做不到的事情。工作很有魅力,谢谢你,伙计。
var = require('querystring');
/*...*/
.send(qs.encode({ key: '...', image: '...' }))