Tag: 获取

如何保留查询string中的types

我试图放在一起会消耗JSON数据的API,我有保留variablestypes的问题。 警告:我正在使用Node.js 鉴于数据: { id: "string", data: [ {input: [0,1,0], output: [1,1]}, {input: [1,0,0], output: [1,0]} ] } 当我做了一个jQuery的Ajax后请求与该数据它被转移为: data[0][input][] 0 data[0][input][] 1 data[0][input][] 0 data[0][output][] 1 data[0][output][] 1 data[1][input][] 1 data[1][input][] 0 data[1][input][] 0 data[1][output][] 1 data[1][output][] 0 id string 或者: id=string&data%5B0%5D%5Binput%5D%5B%5D=0&data%5B0%5D%5Binput%5D%5B%5D=1&data%5B0%5D%5Binput%5D%5B%5D=0&data%5B0%5D%5Boutput%5D%5B%5D=1&data%5B0%5D%5Boutput%5D%5B%5D=1&data%5B1%5D%5Binput%5D%5B%5D=1&data%5B1%5D%5Binput%5D%5B%5D=0&data%5B1%5D%5Binput%5D%5B%5D=0&data%5B1%5D%5Boutput%5D%5B%5D=1&data%5B1%5D%5Boutput%5D%5B%5D=0 我需要能够做的是在服务器端解码数据,但是我的数据在数据中的所有值都被转换为string 。 有没有一种技术来保存一个值的types,即:“string”或“int”等? 我目前正在使用npm上的qs模块来parsing我的POST请求正文。

如何把不同的请求的响应放在与nodejs相同的文档中并请求?

嗨,我想把不同的请求的反应在同一个文件。 我有这个文件: var result = {google:"", twitter:"", facebook:""} 我想对这些网站(google.com,Facebook.com,twitter.com)做不同的GET请求,并把所有的结果放在通讯录中。 我尝试了嵌套的callback,但这样我必须先做谷歌调用,然后像这样的微博等: Request({ url:first_url, },function(err, response, body) { if (err) { request.log(err); }else{ risultato.google = body; Request({ url:second_url, },function(err, response, body) { if (err) { request.log(err); }else{ risultato.facebook = body; Request({ url:third_url, },function(err, response, body) { if (err) { request.log(err); }else{ risultato.twitter = body; console.log(result); } }); […]

<a>标签和获取请求之间的区别

我有一个可能很简单的问题。 什么是<a>标签和任何元素的正常GET请求之间的区别。 我知道<a>标签会自动将您发送到在其href属性中指定的url。 所以我假定Get请求在成功callback中做了类似的事情(如下所示) 但是让我们说,我也想发送一些信息,当一个例如<span>元素被点击,所以我写: $('span').click(() => { $.ajax({ url: '/someurl', type: 'GET', data: { title: someTitle, email: someEmail }, success: (data) => { window.location = '/someurl'; } }); }); 有没有办法用<a>标签来实现这一点? 将信息发送到服务器,以便在req.query.title和req.query.email可用? 做上面的ajax请求会运行我的app.get('/someurl',(req,res)=>{})两次,因为我发送一个GET请求来发送数据(标题和电子邮件),然后我正在做另一个GET请求,当我写window.location = '/someurl'我怎么能重做这个,所以它只发送GET请求一次,但也允许发送和存储信息的req对象,并确保浏览器现在显示/someurl 。

404请求expression路由时

我想了解快递和它如何处理路线。 我有一个域设置了以下结构 / app.js /public_html index.html 在app.js中,我build立了我的express服务器: let app = express(); app.post('/list', (request, response) => { //get data then… response.send(data) }); app.use(express.static('public_html')) app.listen(3000, function(){ console.log('listening'); }); 我运行与node app.js的应用程序 然后,在public_html目录的index.html中,我试图请求数据。 我只是做了一个简单的: fetch('/list').then(function(response) { console.log(response) }) 但是我得到了一个404作为回应。 我对以下几件事有点困惑: 我的networking服务器(Apache / Ubuntu)默认设置为从public_html目录中提供html。 这是否意味着我的整个节点的应用程序结构需要被移动到public_html文件夹和实际的HTML移动到一个static文件夹或东西? 那么港口呢? 节点应用程序在端口3000上侦听 – 但是我不确定如何(或如果)特别向端口发出请求。 路线path – 我张贴到/list但应该是../list ? 我还没有find适用于这个应用程序的configuration。 任何帮助,将不胜感激。

在`fetch()`上使用stream的优点是什么?

我试图使用OneDrive JS SDK下载文件,所以我使用了微软的代码: // Download a file from OneDrive let fs = require('fs'); // requires filesystem module client .api('/me/drive/root/children/Book.xlsx/content') .getStream((err, downloadStream) => { if (err) { console.log(err); return; } let writeStream = fs.createWriteStream('../Book1.xlsx'); downloadStream.pipe(writeStream).on('error', console.log); }); 因为我想让它在浏览器中工作(不仅仅是在Node中),所以我首先尝试了一些浏览器的stream库,但是没有任何工作。 最终,我只使用REST API和fetch() (SDK是REST API的封装)。 一个简单的fetch(url)做了这个工作。 所以我想知道,为什么MS要经过上面的所有stream代码的麻烦,当一条线可以做这个工作? 尤其是stream的performance好于fetch() 。 例如,当下载大文件的时候会获取冻结的应用程序,而stream不会? 还有其他的区别吗?

获取vs请求

我在使用JSONstream,并试图使用fetch来使用它。 该stream每隔几秒发射一些数据。 只有在streamclosures服务器端时,使用fetch来使用stream才能访问数据。 例如: var target; // the url. var options = { method: "POST", body: bodyString, } var drain = function(response) { // hit only when the stream is killed server side. // response.body is always undefined. Can't use the reader it provides. return response.text(); // or response.json(); }; var listenStream = fetch(target, options).then(drain).then(console.log).catch(console.log); […]

发送POST请求并通过Node.js获取数据

我一直在努力发送POST请求和使用Node.js获取数据 我一直在这样试用 var querystring = require('querystring'); var http = require('http'); var postData = querystring.stringify({ }); var options = { hostname: 'www.google.com', port: 80, path: '/', method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Content-Length': postData.length } }; var req = http.request(options, function(res) { console.log('STATUS: ' + res.statusCode); console.log('HEADERS: ' + JSON.stringify(res.headers)); res.setEncoding('utf8'); res.on('data', function (chunk) { console.log('BODY: […]

获取http的Javascriptvariables

我正在学习JavaScript,并希望做相当于PHP的$_GET[Var] = $foo; 我正在为一个项目编写一个基本的CDNtypes的服务器,另外,如何用JavaScript下载文件以供下载? 计划是在NodeJS节点内运行这个代码。 对不起,如果我解释得很糟糕,我很难解释的东西。

在响应组件中使用节点提取来发布数据故障

我只是试图使用node-fetch将json数据发布到快速服务器。 我知道在服务器中的职位职能,因为我已经在git bash中进行了testing。 我也在做一个反应组件。 以下是提取码: addBug(bug) { let bugsModified = this.state.bugs.slice() bug.id = this.state.bugs.length + 1 bugsModified.push(bug) fetch('http://localhost:3000/api/bugs', {method: 'POST', body: bugsModified}) .then(res => res.status === 200 && this.setState({bugs: bugsModified})) } {body:bugsModified}似乎没有向服务器发送任何东西。 这是来自服务器的代码: app.use(bodyParser.json()) app.post('/api/bugs', (req, res) => { const bug = req.body bugs.push(bug) res.json(bug) }) app.listen(3000, () => console.log('connected…')) 如果任何人都可以帮我弄清楚如何使用node-fetch发布实际的数据,那将是不胜感激。

400(坏请求)使用获取login

我正在尝试使用抓取到POSTlogin表单我的loginfunction使用护照。 当使用标准表单action =“/ login”时,login工作,但是我想要去取得能够显示实时错误输出,如果login失败,不刷新… 我得到400(坏请求)和Uncaught(在诺言)SyntaxError:意外的标记B在JSON在位置0时发送login请求… 这是我的代码: let payload = { username: "user1@user1.se", password: "superman123" }; let data = new FormData(); data.append( "json", JSON.stringify( payload ) ); console.log(data); fetch('/login', { method: 'post', body: data }).then(function(response) { // if (response.status >= 400) { // throw new Error("Bad response from server"); // } return response.json(); }) .then(function(data) { […]