Tag: api

我正在做这个API把请求纠正与mongoose?

所以我正在使用mongoose和mongodb,并表示路由来做到这一点。 我有一个用户文档的创build“todolist”空数组,我想能够编辑这个任务添加到列表以及编辑这些任务。 现在我正在考虑最好的办法是让服务器检查req.body是否有一些variables来设置我需要编辑的文档的哪一部分。 这是正确的方法,或者我想为这样的事情创build一个新的API路由,或者我通过检查来自客户端的reqvariables,以确定我想要在服务器上编辑正确做到这一点? 还有更干净的方法吗? router.put('/:user_id', function(req, res) { User.findById(req.params.user_id, function(err, user){ if(err){ res.send(err); return err; } if(req.body.createTask) { user.todolist.push({ "task_name": req.body.task_name, "task_importance": req.body.importance, "task_completed": false }) }else if(req.body.edit_task){ if(req.body.edit_task_name) { user.todolist[req.body.index].task_name = req.body.new_task_name; }else if(req.body.edit_task_importance) { user.todolist[req.body.index].task_importance = req.body.new_task_importance; }else if(req.body.edit_task_completed) { user.todolist[req.body.index].task_completed = true; } } user.save(function(err){ if(err) res.send(err); res.json({message: 'User updated'}); }) […]

使用Node创buildStrawPoll.me轮询

我正在尝试使用Strawpoll.me API创build一个新的民意调查。 var poll = { title: 'test', options: [ '1', '2' ] }; var request = require('request'); request.post( 'https://strawpoll.me/api/v2/polls', { body: poll, json: true }, function (error, response, body) { console.log(JSON.stringify(response, null, 2)); if (!error && response.statusCode == 200) { console.log(body) } } ); 但我不能创造新的民意调查。 我正在收到“statusCode”:307和空的身体。 StrawPoll文档: https : //github.com/strawpoll/strawpoll/wiki/API 我能做些什么? 谢谢!

以编程方式清除cloudflarecaching

我试图清除cloudflarecaching单个url后,将请求放入node.js api。 我正在使用https://github.com/cloudflare/node-cloudflare库,但是我不知道如何logging从cloudflare的callback。 根据同一个仓库中的testing文件,语法应该是这样的: //client declaration: t.context.cf = new CF({ key: 'deadbeef', email: 'cloudflare@example.com', h2: false }); //invoke clearCache: t.context.cf.deleteCache('1', { files: [ 'https://example.com/purge_url' ] }) 我怎样才能读出这个请求的callback? 我已经在我自己的代码中尝试了以下内容: client.deleteCache(process.env.CLOUDFLARE_ZONE, { "files": [url] }, function (data) { console.log(`Cloudflare cache purged for: ${url}`); console.log(`Callback:${data}`); }) 和: client.deleteCache('1', { files: [ 'https://example.com/purge_url' ] }).then(function(a,b){ console.log('helllllllooooooooo'); }) 无济于事。 🙁

Node.js:Google AnalyticsAPI:如何使用“服务帐户”进行授权的只读pipe理API请求?

我正在创build在Raspberry Pi上运行的LED网格代码,它将使用Node.js通过Google Analytics API收集Google Analytics数据。 它将统计多个网站的统计数据,然后在网格中滚动统计数据。 我可以使用帮助列出帐户项目通过pipe理API ,特别是帐户ID,财产ID和查看ID保存手动工作。 我在这方面遇到了错误(见下文)。 这似乎是一个Service Account的工作。 在此处设置Google Cloud项目,然后在此处设置服务帐户后,我将在下载的授权中包含的电子邮件地址添加为属性用户(读取/分析权限),适用于Google Analyticspipe理设置。 借此,我可以成功检索Google Analytics数据以获取已知视图ID(在Google Analyticspipe理员中手动查找,ID在视图设置页面上显示),具体如下: 'use strict'; ////////////// // includes // ////////////// var google = require('googleapis'); var fs = require('fs'); var Promise = require('promise'); ////////////// // settings // ////////////// //the service account auth file downloaded from Google Cloud var serviceAccountInfoPath = './secrets.json'; //view […]

ActionHero.js框架与Oracle数据库持久性

我很新的工作与nodejs,我需要一个REST API,可以与websocket工作。 我正在寻找一个我可以使用的框架,我发现了actionhero.js,我认为这可以满足我的需求。 但是我看到这个框架有一点问题,我找不到有关如何使它与Oracle数据库一起工作的信息,我将非常感谢你们中的任何一位能否告诉我如何使它工作框架与Oracle数据库,或build议我一个基于REST API的框架,可以满足我的需要。 谢谢。

使用AWS Lambda和API网关来提供静态JavaScript?

我正在写一个第三方小部件,执行JavaScript客户端端添加一个button到用户的网站。 从本质上讲,用户将在他们的网站上包含一个标签,其中包含我的小部件的path。 该path的URL将包含调用该窗口小部件的特定用户的app_id。 例如 <script src="www.widget.com/widget/{USER_ID}"> 我希望能够使用AWS Lambda和API Gateway进行一些快速authentication,允许用户下载该小部件并提供javascript内容。 这在Express.js中很像res.sendFile,但API Gateway似乎不支持发送文件。 有没有什么方法可以使用API​​网关快速提供JavaScript,而不必将整个文件串联起来?

从API响应输出JSON

我已经成功地从我创build的api获取JSON,但是我实际上正在渲染那个JSON。 我已经设法通过'stringify'它在控制台输出它,但我似乎无法实际呈现JSON的页面。 import React, { Component } from 'react'; import './App.css'; import $ from 'jquery'; function getData() { return $.ajax({ type: "GET", url: 'http://localhost:3001/data', data: {}, xhrFields: { withCredentials: false }, crossDomain: true, dataType: 'json', success: handleData }); } function handleData(data /* , textStatus, jqXHR */ ) { console.log(JSON.stringify(data)); return JSON.stringify(data); } class App extends […]

从API获取POST数据(节点js,反应)

我正在尝试对我的API进行POST请求。 处理程序目前看起来像这样… app.post('/login', function(req, res, next) { console.log("here"); … }); 这个API托pipe在本地主机8080上。而且我正在提取数据。 fetch('http://localhost:8080/login', { method: 'post', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify({ username: this.state.username, password: this.state.password }) }); 我现在所传递的内容是无关紧要的,我只想做一个成功的POST请求。 当我提交表单时,它提取API,这是我在控制台上得到的消息… OPTIONS /login 200 8.177 ms – 4 它看起来好像有什么工作,但它没有, console.log("here"); 永远不会被调用。 我相信我没有正确调用API。 如果我删除头,POST调用,但是我相信我需要这些头,因为它们是重要的数据传递到response 。 我该怎么办?

使用API​​和BatchUpdateRequest删除谷歌表中的行

我正在尝试将BatchUpdateRequest发送到Google Sheets API,以便我可以从电子表格中删除一行数据。 我的请求如下所示: var spreadsheetId = '1EV8S8AaAmxF3vP0F6RWxKIUlvF6uFEmsrOFWA1oNBYI'; var requests = []; requests.push({ "deleteDimension": { "range": { "sheetId": spreadsheetId, "dimension": "ROWS", "startIndex": 2, "endIndex": 3 } } }); var batchUpdateRequest = {requests: requests} var test = auth; sheets.spreadsheets.batchUpdate({ auth: test, spreadsheetId: spreadsheetId, resource: batchUpdateRequest }, function(err, response) { if (err) { console.log('The API returned an […]

如何在Snapdeal上生成X-Auth-Token和X-Seller-AuthZ-Token

我试图在snapdeal上生成X-Auth-Token和X-Seller_AuthZ-Token。 我用下面的链接来生成令牌: https://authorize.snapdeal.com/authserverui/login?returnURL= {ReturnURLAddress}&appId = {SellerEmailID} 但是它在查询参数中给出了无效的appId / partnerId / partnerName。