Tag: rest

将cURL命令转换为发送通知到kaa服务器的请求

我想发送一个通知给kaa服务器。 下面的cURL命令工作正常,但我想从我的node.js服务器发送POST请求。 请帮助我转换到发布请求。 curl -v -S -u devuser:devuser123 -F'notification= {"applicationId":"32769","schemaId":"32778","topicId":"32770","type":"USER"}; type=application/json' -F file=@notification.json "http://localhost:8080/kaaAdmin/rest/api/sendNotification" | python -mjson.tool 我试过这样的: var notificationValue= {"applicationId":"32769","schemaId":"32778","topicId":"32770","type":"USER"}; var file = 'notification.json'; var opts = { url: 'http://localhost:8080/kaaAdmin/rest/api/sendNotification', method: 'POST', auth: { user: 'devuser', password: 'devuser123' }, json: true, formData: { notification: JSON.stringify(notificationValue), file : fs.readFileSync(file) } }; request(opts, function(err, resp, body) […]

如何在环回中制定API限速策略

我只是想为每个帐户计划制定一个API请求速率限制,假设我们有用户和每个用户都有一个计划,每天有多lessAPI请求可以制定。 那么现在,我怎样才能在环回3.x的API限制政策。 谢谢

从客户端调用服务器端REST函数

在这种情况下,在服务器端有一些与REST函数存档restApi.js 。 我的REST函数工作正常,我用提示命令testing。 在我的客户端有一些档案index.ejs ,我想用这个文件调用。 我的restApi.js:服务器端 var Client = require('./lib/node-rest-client').Client; var client = new Client(); var dataLogin = { data: { "userName":"xxxxx","password":"xxxxxxxxxx","platform":"xxxx" }, headers: { "Content-Type": "application/json" } }; var numberOrigin = 350; client.registerMethod("postMethod", "xxxxxxxxxxxxxxxxxx/services/login", "POST"); client.methods.postMethod(dataLogin, function (data, response) { // parsed response body as js object // console.log(data); // raw response if(Buffer.isBuffer(data)){ data […]

节点js中的请求响应周期如何与外部I / O一起工作

完整的node.js初学者在这里。 我在某处看到了这个“hello world”的例子 // Load the http module to create an http server. var http = require('http'); // Configure our HTTP server to respond with Hello World to all requests. var server = http.createServer(function (request, response) { response.writeHead(200, {"Content-Type": "text/plain"}); response.end("Hello World\n"); }); // Listen on port 8000, IP defaults to 127.0.0.1 server.listen(8000); // Put […]

基于回合的游戏的REST API?

我们正在开发基于回合的多人游戏,为此我们需要实现一些后端function,这将跟踪玩家的数据和游戏。 我的第一个方法是使用NodeJS和MongoDBdeviseREST API,让客户端访问这些数据。 我并不是很了解Web服务,但据我所知,REST涉及整个数据模型的信息交换。 所以我们可以说我有一个游戏模型,其中包含比分,棋盘状态和参与者的信息,那么我不能只发送一个请求来检索某个游戏的分数,但是我需要发送一个GET请求游戏模式,然后从它读取分数,如下所示: GET http://restserver.com/games/12d3k351s 这是正确的还是我做了一个错误的假设? 如果是这样的话,我会想多次获得一个完整的游戏列表,而不是整个棋盘状态,这将是一个更大的数据块。 将棋盘状态分成不同的模式是否明智?例如,作为减less每次游戏信息请求传送的不必要数据量的手段? 如果我不得不devise数据库而不使用REST API,那么我肯定会把棋盘状态保持为游戏集合中Game类的属性,所以这听起来不是最好的做法。

如何从不同的node.js代码获取数据

我有一个db.js中的代码片段如下, exports.asyncGetAllData = function () { connection.connect(function(err) { connection.query(sqlGetAllData, function (err, result) { if (err) reject(err); else { //console.log(result); } }); }); }; 我想在下面的app.js中调用函数的时候得到结果数据。 app.get('/test/getPriceTrend', function(req, res) { console.log('SERVER::getPriceTrend'); console.log(req.url); var data = db_connection.asyncGetAllData(); //data is undefined console.log(data); res.setHeader('Accept', 'application/json'); res.writeHead(res.statusCode); //The following piece of code will send information from the database res.write(JSON.stringify({"hello":"world"})); res.end(); }); […]

快递中可变数量的路线参数?

cex.io的RESTful API有一个有趣的路线,可变数量的参数返回给定的所有货币对。 这是如何实现的? 这里是一个伪代码types的例子,我的意思是… app.get('/pairs/:arg1/:arg2/:argn…', function(req, res, next) { // app logic });

如何将RxJs observable的结果作为来自Node.js的rest响应返回

场景:来自多个rest调用的数据必须汇总为一个单独的对象,并作为通过Node.js服务的初始请求的其余响应返回。 问题:其余响应不等待observable完成,因此在调度剩余响应之后实现突变(聚合)。 //teamsController class invoked via GET /teams import * as Rx from 'rxjs/Rx' import http from 'axios' import Teams from '../models/teams' const teamsAPI = "http://localhost:8081/api/v1/teams/players/"; const usersAPI = "http://localhost:8082/api/v1/users/"; exports.getTeamByPlayer = function (req, res) { let username= req.get("username"); Rx.Observable.fromPromise(fetchTeam(username)) .map(team => { Rx.Observable.from(team.players).subscribe(player => { console.log(`Player name is ${player.username}`); Rx.Observable.fromPromise(fetchUser(player.username)) .map(avatar => avatar.avatar) .subscribe(avatar […]

在node.js中传递expression式资源的引用?

我如何通过例如数据库引用 nano = require('nano')('http://127.0.0.1:5984') db = nano.use('database') 到资源“用户”(加载快速资源 )? 我试过了: app.resource('user', require('./routes/user'), {db: db}); 但是这不起作用。

在node.js的Cypher REST API中为Neo4j提供'query'参数的正确方法

如何在node.js中通过POST请求构造正确的Cypher查询到Neo4j? 码: var http = require('http'); var options = { host: 'a90cfa68c.hosted.neo4j.org', port: 7357, path: '/db/data/cypher', method: 'POST', headers: { 'Authorization': 'Basic ' + new Buffer("<login>:<password>").toString('base64') }, "Content-Type" : "application/json", "query" : "START root=node(*) RETURN root" // <— Doesn't work 🙁 }; http.request(options, function(res) { console.log('STATUS: ' + res.statusCode); console.log('HEADERS: ' + JSON.stringify(res.headers)); res.setEncoding('utf8'); res.on('data', […]