我有一些用node.js编写的http测试工具,我用它来测试localhost上的kestrel服务器。 Node.js发出请求但似乎挂起并超时。我可以在kestrel日志中看到http请求已经发出,并且使用postman和其他客户端工具向本地kestrel服务器发出请求似乎可以正常工作。
为什么使用node.js发出http请求会在返回时挂起?它似乎成功地向服务器发出请求,但它是否在等待某种类型的http端返回?
如果我将服务部署到azure并且我通过互联网访问相同的服务,它可以正常工作 - 只有当它在localhost上并且客户端是node.js时才会挂起。
这是我的node.js代码
describe('homepage', function(){
it('should respond to GET',function(done){
superagent
.get('http://localhost:5000/message')
.end(function(err, res){
expect(res.status).to.equal(200);
done()
})
})
});
我的简单asp核心/ 5 web api在localhost上运行正常
[Route("/message")]
public class MessageController : Controller
{
[HttpGet]
public string Get()
{
return "hello";
}
}