Tag: 获取

获取types错误:无法在“窗口”上执行“获取”:非法调用

我试图使用fetch调用后端,而不需要像Axios这样的库。 api.ts export const sendSuggestion = ((data: any): Promise<any> => { console.log(JSON.stringify(data)); const apiUrl = `/api/suggest/`; return fetch(apiUrl, { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify(data) }).then(checkStatus) .then(r => r.json()) .then(data => { console.log(data); }); }); const checkStatus = ((response: any) => { if (response.ok) { return response; } else { var error = new […]

用请求parsing查询数组并用express接收

我有一个问题发送和接收查询参数与快递和请求。 要求方: const request = require('request'); request({url: 'http://localhost', json: true, qs: {id: [1,2,3,4]}}) 请求将这样的请求发送到我的服务器: http://localhost/?id%5B0%5D=1&id%5B1%5D=2&id%5B2%5D=3&id%5B3%5D=4 然后当我用快递收到我的结果 app.get('/', (req, res, next) => { console.log(req.query); }) 我有 {id: {0: 1, 1: 2, 2: 3, 3: 4}} 我想拥有 {id: [1,2,3,4]} 如果我手动发送请求使用这个url它的作品 http://localhost/?id=1&id=2&id=3&id=4 所以我不明白,如果错误来自request女巫有parsing我的数组问题或express有问题parsing我的查询

http.get请求循环closures问题(节点)

我希望能够在命令行中放入一系列URL,并按照提供的顺序获取这些请求的结果。 我已经研究了闭包,以实现这一点,因为callback不会按顺序执行(更有可能是最快的响应) for (var i = 2; i < process.argv.length; i++) { (function(index) { http.get(process.argv[index], function (response) { response.pipe(bl(function (err, data) { console.log(data.toString()); })); }); })(i); } for循环参数。 然后每个迭代调用IIFE匿名函数,然后调用get请求等等。 但是问题依然存在,它被无序执行。 不按用户要求的顺序。 我究竟做错了什么?

如何用特定的JS以特定的方式读取URL中的参数

我创build了一个快递包的服务器,我试图以特定的方式读取URL中的参数。 url如下所示: http : //127.0.0.1 : 8080/screen=3 (no为参数的符号)。 我需要将屏幕的编号保存在一个variables中。 我试过这个: var express = require('express'); var app = express(); app.get('/screen:sceenNum', function (req, res) { var temp = req.sceenNum; res.send(temp); //for checking on the browser }); 我也试过这个,但是他必须得到'?' 在URL中: app.get('/', function(req, res) { var screenNum = req.param('screen'); res.send(screenNum); }); 任何人都可以请有解决scheme? 谢谢

如何在Express之间传递数据

假设我有这个接收一些数据的POST路由。 app.post('/getData', function(req, res){ var retrievedData = req.body.exampleVariable; // Send data to GET method }); 我有这个呈现页面的GET方法,但需要在POST方法中检索到的数据 app.get('/displayData', function(req, res){ // Retrieve data from POST method and display it. res.render('/examplePage.ejs', {retrievedData : req.retrievedData}); }); 将retrievedDatavariables从给定POST路由传递给GETpath的最佳方法是什么? 注意, res.render()方法似乎只适用于app.get()types的方法

如何提供图像到客户端nodejs和angular度

我试图发送.jog图像到客户端,但我失败了。 app.get('/image', function(req, res){; res.sendfile(path.resolve(path.resolve(__dirname,'/Imagepath/image.jpg"))); }); 在我的angular度上 $http({ method:'GET', url:'/image', }).then(function (response){ $scope.image= response.data; }) <img id="imgid" ng-src="{{image}}" width="500" height="400"/> 问题是响应是一些二进制数据。 我怎样才能把它发送给我可以显示在img src上的数据。 如何在客户端的服务器文件夹中显示图像?谢谢。

不能GET / POST? 在expression错误?

我有一个非常简单的快速代码 var express = require("express"); var bodyParser = require("body-parser"); var http = require("http"); var path = require("path"); var app = express(); app.use(bodyParser.urlencoded({ extended: false })); app.set("views",path.resolve(__dirname,"views")); app.set("view engine","ejs"); app.get("/",function(req,res){ res.render("index"); }); app.post('/', function(req, res) { console.log("posted!"); res.render("final"); }); http.createServer(app).listen(3000); 现在,当我尝试访问本地主机:3000一切都加载好,在index.ejs我有一个简单的forms与input名称mname,whan我在input框中命名,然后按Enter我得到这个错误 Cannot GET /POST?mname=a 我在代码中定义了一个app.post,并要求它呈现final.ejs。 那么代码出错了? 试过其他问题,说快递4个用户“路由器”进行路由,尝试过,但也失败了。

尝试HTTP请求时获取连接ECONNREFUSED 127.0.0.1:80

我正尝试使用本机node.js http模块向news.google.com发出http请求。 当我尝试以下操作时,出现connect ECONNREFUSED 127.0.0.1:80错误 var http = require('http'); var payload = JSON.stringify({ name: 'John Smith', email: 'john.smith@smith.com', resume: 'https://drive.google.com/open?id=asgsaegsehsehseh' }); var options = { hostname: 'https://news.google.com', path: '/', method: 'GET' }; var httpRequest = http.request(options, function(request, response) { console.log('STATUS', response.statusCode); response.setEncoding('utf8'); response.on('data', function(chunk) { console.log('BODY:', chunk); }); response.on('end', function() { console.log('No more data in […]

在Express JS路由中,formData获取POST是空的

我有一个窗体,使用fetch()到AJAX与NodeJS上的路由。 当AJAX POST命中路由时,req.body显示一个空对象{}。 代码如下: //在app.js中 app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended:true})); //在form.js中 form.getElementById('form__option').addEventListener('submit', e => { e.preventDefault() const form = $('form')[0] fetch('/polls/create', { method: 'POST', body: new FormData(form) }) }) //在appRoute.js中 exports.createPost = (req, res, next) => { console.log('req body', req.body) res.send('NOT IMPLEMENTED: pollsController createPost'); }

问题:尝试使用客户端应用程序连接到没有端口的Socket.io服务器

大家! 我在一个问题。 我试图用我的客户端应用程序连接到服务器。 我的服务器由Modulus托pipe,没有端口访问URL。 当我尝试调用io('my-application.onmodulus.net') ,浏览器(chrome)返回一个失败的GET net::ERR_CONNECTION_REFUSED其中一个PORT设置为GET URL。 我在浏览器中testing了没有PORT的URL并且工作。 有一种方法来获取socket.io连接从客户端没有socket.io在URL中设置一个端口? 这是我的代码: 我尝试了不同的方法来调用这个方法,而我没有findOPTIONS参数文档。 var socket = io('my-application.onmodulus.net', {multiplex: false, path: '/socket.io'}); 非常感谢你!