Tag: curl

POST json文件使用请求模块

我打算将下面的curl API调用转换为node.js尽pipe在执行POST时我仍然遇到error 。 curl -X POST –user user1@customer1:secret http://demo.test.com/controller/actions/38 -F file=@ExportActions.json 下面是使用请求 – npm模块的初始代码,但API调用仍然失败。 var requestdata = fs.readFileSync('./ExportActions.json').toString(); var request = require('request'); request.post({ url: 'https://demo.test.com/controller/actions/38', auth: { 'user': 'user1@customer1', 'pass': 'secret' }, body: requestdata }, function(error, response, body){ console.log(body); }); 每次运行脚本时,都会收到以下错误消息: Could not import Actions: org.apache.commons.fileupload.FileUploadException: the request was rejected because no multipart boundary was […]

理解使用oauth的复杂curl命令

我有以下curl命令(删除公司的具体细节): curl -v -u "user:password" -H "Content-Type: application/x-www-form-urlencoded" -d "grant_type=annonymised:mycompany:params:oauth:grant-type:apiKey&apikey=myAPI Key" "myendpoint goes here" 我是CURL的新手,正在尝试使用nodejs的'request'模块将其转换为请求(请记住,我实际上使用的是用户名/密码而不是API密钥)。 我在“表单”参数中放什么? 目前我有: form: { "params": "oauth","grant_type": "password", "username": username, "password": password }, 但因为我不能读取上面的curl请求,我正在努力知道什么是缺less的(我重复一下,我使用用户名/密码,而不是API密钥)。 任何人都可以帮助这个请。

解码特殊的西里尔文字符

运行下面的小代码时,terminal上会出现奇怪的字符: const http = require("http") http.get("http://www.pravda.com.ua/news/2017/10/6/7157464/", res => { res.on("data", e => console.log(e.toString())) }) …如: 为什么会这样呢? 当curl http://www.pravda.com.ua/news/2017/10/6/7157464/ ,我们得到原始问号(如: <title>? ? | ?? </title> )。 但是,浏览器似乎得到了好的字符<title>У Кахов…</title> 。 是发送不同内容的服务器还是客户端的解释方式(Node.js vs curl vs browser)?

来自node.js HTTP服务器的PHP curl超时

我有一个简单的Node.js HTTP服务器运行(下面的代码),我试图立即响应任何请求,然后asynchronous处理请求。 var http = require('http'); var url = require('url'); var querystring = require('querystring'); http.createServer(function parseRequest(request, response){ // Responding without any delay response.end(); var query = url.parse(request.url).query; var param1 = querystring.parse(query)["param1"]; var param2 = querystring.parse(query)["param2"]; console.log("Param1: " + param1 + " and param2: " + param2); }).listen(8888); console.log("HTTP server started on port 8888"); 我有另一个PHP脚本(下面的代码)发送一个Curl GET请求到HTTP服务器。 […]

在Nodejs(request)中如何发送mutliPart http请求中的文件

我怎样才能发送文件使用MultiPart从Nodejs使用请求? 这将和下面的Curl命令一样: curl -X POST -F "photos[]=@img.jpg;type=image/jpg" https://example.com 它创build的Http请求: { "json": null, "files": { "photos[]": "data:image/jpg;base64,[Binary] }, "form": {}, "headers": { "Accept": "*/*", "Content-Type": "multipart/form-data; boundary=—————————-0195fbe0d4ab", "Connection": "close", "Host": "httpbin.org", "Content-Length": "42311", "User-Agent": "curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8x zlib/1.2.5" }, "origin": "23.125.128.191", "data": "", "url": "http://httpbin.org/post", "args": {} }

使用curl对node.js进行基本身份validation

我正在开发一个应用程序,并作为身份validation方法我使用基本身份validation 到目前为止一切工作正常,但显然我仍然做错了一个新的合作伙伴表示。 特别是,命令的forms如下: curl -v -H 'Authorization: Basic test:test' -H 'APP_KEY: AN-APP-KEY' -H 'APP_SECRET: XyZ' http://localhost:3000/auth 成功,我在服务器上收到的标题是这样的: { "user-agent": "curl/7.37.1", "host": "localhost:3000", "accept": "*/*", "authorization": "Basic test:test", "app_key": "AN-APP-KEY", "app_secret": "XyZ" } 另一方面,一个命令的forms是: curl -v –user 'test:test' -H 'APP_KEY: AN-APP-KEY' -H 'APP_SECRET: XyZ' http://localhost:3000/auth 不成功。 其实,我可以在服务器端看到的标题是这样的: { "authorization": "Basic dGVzdF9hdXRoOnRlc3Q=", "user-agent": "curl/7.37.1", "host": "localhost:3000", "accept": […]

在Express / Node服务器上通过HTTP POST接收wavaudio文件

我试图通过cURL发送audio文件audio.wav到我的快递服务器。 我正在使用以下cURL请求: curl -X POST –data-binary @"audio.wav" -H "Content-Type: audio/wav" localhost:3000/extract_indicators/audio/darksigma 在我的服务器上,我使用顶部的以下行: app.use(bodyParser.json()); 这样我就可以默认将传入请求的正文parsing为JSON。 在我的适当的Express路由处理程序中,我有: app.post('/extract_indicators/audio/:user_id', function (req, res) { app.use(bodyParser.raw({ type: 'audio/wav' })); console.log("RECIEVED AUDIO TO EXTRACT INDICATORS: ", req.body); <do stuff with audio and send result back> app.use(bodyParser.json()); }); 我打电话给console.log打印: RECIEVED AUDIO TO EXTRACT INDICATORS: {} 我究竟做错了什么? 为什么req.body不包含我的数据?

NW.js / NodeJS Google Analytics集成

我尝试使用Google Analytics(分析)测量协议在node-webkit应用程序中实施Google Analytics(分析)API,我设法使用ga-dev-tools.appspot.com来做到这一点,但是我无法通过简单的JavaScript请求来使用它。 我想问题是头参数“来源”(在一个节点的WebKit应用程序是“文件:/ /”),因此我试图使用HTTP请求与节点,但我达到了相同的结果:谷歌响应与"hitParsingResult": [ {"valid": true,…但是在Google Analytics仪表板中? 无法看到事件,或在这种情况下,浏览量。 奇怪的是,如果我在ga-dev-tools.appspot.com(复制为cURL)上使用chrome检查器复制请求,并将其在linuxterminal中执行,它将起作用,但不会与nodejs http请求一起使用。 细节:cURL电话 curl 'https://www.google-analytics.com/collect' -H 'Accept: */*' -H 'Referer: https://ga-dev-tools.appspot.com/hit-builder/' -H 'Origin: https://ga-dev-tools.appspot.com' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' –data 'v=1&t=screenview&tid=UA-XXXXX-X&cid=develop&an=mainapplication&av=2.0.1&cd=login' nodejs代码 request.post("https://www.google-analytics.com/debug/collect", var options = { url: 'https://api.github.com/repos/request/request', headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', […]

把我的Curl变成NodeJS

我试图在NodeJS中模仿下面的curl命令的效果,但似乎无法让它工作。 任何帮助,将不胜感激。 curlhttps://url.com/rest/scripts -H“授权:持票人$ TOKEN” 假设我已经在var auth中存储了$ TOKEN的内容,那么为了模拟上面的curl命令,请求的正确格式(同步或其他)是什么? 我目前的尝试看起来像这样,但似乎并没有工作: var resData = request('GET',reqURL,auth); 编辑:解决了,但我觉得我应该指出上述使用'sync-request',因此如何将结果作为variables存储。

如何使用参数在node.js中进行Curl调用

我试图从一个节点模块做出这个curl请求。 不知道如何传递参数。 curl -u myusername https://myusername.cloudant.com/_api/v2/monitoring/disk_use?cluster=myclustername&format=json 到目前为止,我得到了下面的代码。 我正在使用node-libcurl ,希望这很容易。 var Curl = require( 'node-libcurl' ); var curl = new Curl(); curl.setOpt( 'URL', 'myusername.cloudant.com/_api/v2/monitoring/disk_use?cluster=myclustername&format=json' ); curl.on( 'end', function( statusCode, body, headers ) { console.info( statusCode ); console.info( '—' ); console.info( body ); console.info( '—' ); console.info( this.getInfo( 'TOTAL_TIME' ) ); this.close(); }); 所以我不知道如何在命令中传递-u标志。 在此先感谢任何方向将有所帮助。