Tag: superagent

Postman和一个简单的Http请求之间的差异与superagent

我想知道一个简单的POST请求与superagent和POST请求的POST请求之间有什么区别。 因为我试图报废一个网站,所以我向邮递员发了一个邮件请求,一切正常,我得到了预期的结果。 但是当我用superagent进行POST Http请求时,我得到了301redirect。 有一种方法可以通过这个问题来得到和邮差一样的结果吗? 预先感谢您的回答。

将产卵过程的标准输出转化为超级上传

我正在努力解决如何获取产生的subprocess的输出,并将该输出提供给多部分MIME上载。 这是我所知道的,据我所知应该工作 var request = require('superagent'); var spawn = require('child_process').spawn; var spawned = spawn('echo', ['hello', 'world']); request.post('http://localhost/api/upload') .attach('file', spawned.stdout) .end(function(res) { console.log("DONE", res); }); 不幸的是,这引发了相当无益的Error: socket hang up来自Node的响应。

如何在testingNodeJS API时模拟外部服务

我有用koa构build的JSON API,我试图用集成testing来覆盖。 一个简单的testing看起来像这样: describe("GET: /users", function() { it ("should respond", function (done) { request(server) .get('/api/users') .expect(200, done); }); }); 现在问题来了,当一个控制器后面的动作 – 让说在POST /用户saveUser – 使用外部资源。 例如,我需要validation用户的电话号码。 我的控制器看起来像这样: save: async function(ctx, next) { const userFromRequest = await parse(ctx); try { // validate data await ctx.repo.validate(userFromRequest); // validate mobile code await ctx.repo.validateSMSCode( userFromRequest.mobile_number_verification_token, userFromRequest.mobile_number.prefix + userFromRequest.mobile_number.number ); […]

与没有摩卡的Superagent链接请求

这个问题谈论链接请求,但它使用mocha 。 我怎么能连锁superagent请求(调用另一个其余的API在最后的方法),而不使用Mocha或it ? 当我做链接 superagent.post( URL ).send( DATA ).end( function(err,res){ console.log("1"); superagent.post( URL1 ).send( DATA1 ).end( function(err,res){ console.log("2"); }); }); 控制台上没有显示console.log。

TypeError:str.charCodeAt不是一个函数

我今天更新到节点版本6,可能已经打破了一些东西。 我试图回到节点5.10,但问题并没有消失。 这可能与节点v6发布的新V8引擎有关吗? 有没有人经历过这个? 任何想法? 最后一行我可以放置一个断点(在node_modules / superagent / lib / node / index.js中): `if ('string' != typeof url) url = format(url);` variablesurl的值是一个string,看起来像一个有效的url format()在url模块中作为urlFormat() 错误: TypeError: str.charCodeAt is not a function at encodeAuth (url.js:929:17) at Request.Url.format (url.js:543:12) at urlFormat (url.js:535:63) at new Request (/develop/sl/node_modules/superagent/lib/node/index.js:129:11) at request (/develop/sl/node_modules/superagent/lib/request.js:26:12) at Request.use (/develop/sl/node_modules/superagent/lib/request-base.js:65:3) … 更新:这可能与V8引擎无关,因为它仍然是v4,而不是新的v5。 $ node -pe […]

使用superagent-bluebird-promise处理节点服务器上的服务器redirect

我有一个坐在我的Java巨石(后端)和浏览器之间的节点服务器。 节点服务器处理反应组件和所有的服务器侧渲染。 我使用superagent-bluebird-promise在节点服务器上处理xhr。 现在,节点服务器也会访问后端的apis,后端可以在某些情况下将xx调用redirect到另一个URL。 在这里我想处理这个。 我不希望节点服务器打到redirect,但我想抓住,并根据一些条件做redirect。 有可能处理? 如果是的话,怎么样? 如果不是的话,在节点服务器上处理后端redirect的最好方法是什么?

使用SailsJS / Node,Mocha,Supertest进行authentication的会话存储

我有一个SailsJS设置,并使用Mocha / Supertest / Superagent组合来运行unit testing。 我search了四周,阅读supertest,现在它如何扩展superagent.agent('url')以存储会话和cookie。 我知道我/运动员/login和/运动员/当前路线正在工作,因为我可以使用邮差testing他们,他们返回正确的值。 然而,在testing时,我在login时获得了200个状态,但是404 /运动员/当前状态 这是我目前的工作: 1.摩卡testinglogin和validation用户login会话 var should = require('should'), assert = require('assert'), request = require('supertest'); it('/athlete/login should return 200 and athlete on success', function (done){ var athleteStub = AthleteStub(), setPassword = athleteStub.password; Athlete.create(athleteStub, function(err, newAthlete) { var user = request.agent(sails.express.app); user .post('/athlete/login') .send({ 'email': athleteStub.email, 'password': setPassword }) […]

如何在Multipart superagent请求中发送一个Object和一个附加文件?

我正在尝试使用superagent对我的API进行多部分POST请求。 我的代码: superagent .post(apiUrl + '/api/company/profile/edit') .field("profileData", profileData) .attach('company_logo', logoFile ) .set('Accept', 'application/json') .end(function(err, res){ if(err){ dispatch(updateProfileStatusAction("error", res)); } else { dispatch(updateProfileStatusAction("success", res)); } }); 我遇到的问题是profileData是一个嵌套的对象。 当我在API中获取请求时,我将profileData的值看作string[Object, Object] 当我查看多部分请求的文档,使用superagent https://visionmedia.github.io/superagent/#multipart-requests时,它看起来像.field()只是一个键,值对而不是一个对象。 然后我尝试使用.send({profileData:profileData})而不是字段,但是当我这样做时,我得到一个错误,说.attach和.send不能在同一个请求中一起使用。

SuperAgent + Node.js连接被拒绝

我对Node.js非常陌生,所以这可能是一个基本的理解问题,但是当我不认为我应该这样做时,我从一个超级http请求中获得ECONNREFUSED : $ curl http://localhost:5000/ {"you": "looking good"} $ node > var request = require("superagent"); > var req = request.get("http://localhost:5000/").on('error', function (err) { console.log("There's an emergency is going on.", err) }).end(function (data) { console.log("All is well", data.body) }); There's an emergency is going on. { [Error: connect ECONNREFUSED] code: 'ECONNREFUSED', errno: 'ECONNREFUSED', syscall: 'connect' } […]

在React代码中导入superagent时出错

我有一个用JSX编写的NodeJS服务器代码,我在这里导入superagent: import request from 'superagent'; 当服务器启动后生成,我得到以下错误:TypeError:require不是一个函数。 这发生在我编译的代码中的以下行: var crypto = require('crypto'); 在回溯中,我意识到encryption是“强大”所要求的,这是“超级”所要求的。 我在客户端JavaScript代码中具有相同的superagent导入,但工作正常。 我将节点(服务器)和客户端的编译JS代码进行了比较,两者都是相同的。 所以它的构build方式似乎不是一个问题。 有没有人看过这个错误,你会知道需要做什么?