Tag: loopbackjs

StrongLoop环回 – 错误:无法find模块'完成'

我遇到了StrongLoop Loopback的阻塞问题。 我刚开始有以下错误,当我试图启动我的API … James-MacBook-Pro:rti_loopback_api jameseisenlohr $节点。 module.js:327 throw err; ^ Error: Cannot find module 'on-finished' at Function.Module._resolveFilename (module.js:325:15) at Function.Module._load (module.js:276:25) at Module.require (module.js:353:17) at require (internal/module.js:12:17) at Object.<anonymous> (/Users/jameseisenlohr/Google Drive/Sites/rti_loopback_api/node_modules/express/node_modules/finalhandler/index.js:16:18) at Module._compile (module.js:397:26) at Object.Module._extensions..js (module.js:404:10) at Module.load (module.js:343:32) at Function.Module._load (module.js:300:12) at Module.require (module.js:353:17) James-MacBook-Pro:rti_loopback_api jameseisenlohr $ 有什么想法吗? 我很难过 我没有定义名为“未完成”的模型。 我不知道在哪里可以解决这个错误。 任何投入将不胜感激。 […]

应用程序在回送自定义js文件中是未定义的

我正在使用nodejs loopback framework.i想运行一个cron job.i在server / boot文件夹中为这个cron作业创build了一个自定义的js文件。但是当我手动运行这个文件(xyz)时。 应用程序是undefined.my代码如下 var app = require('../server.js'); console.log(">>>>>>>>>>>>>>in test") var subscription = app.models.UserNotification; console.log(">>>>>>>>>>>..in manage") var datasource=subscription.dataSource; var query="SELECT DISTINCT userId FROM users_subscription"; datasource.connector.query(sql,function (err, data) { console.log(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>data is>>>>>",data); }) 这里是我的server.js文件 var bodyParser = require('body-parser'); var loopback = require('loopback'); var boot = require('loopback-boot'); var app = module.exports = loopback(); var passport […]

如何访问远程方法中的“当前login用户”?

最近在我的一个应用程序中,我需要访问当前login的用户数据以保存在另一个模型(如书籍的作者或书的所有者)。 在我的谷歌search中,我遇到了这些引用,但没有一个是有用的。 https://github.com/strongloop/loopback/issues/1495 https://docs.strongloop.com/display/public/LB/Using+current+context … 他们都有关于访问context或req对象的这个问题。 三天后,我决定切换到远程远程挂钩,并添加该阶段的所有者或作者。 但是这个解决scheme有些问题。 在strongloop的文档( https://docs.strongloop.com/display/public/LB/Remote+hooks )中,有一个variablesctx.req.accessToken ,它保存了当前login的用户访问令牌。 但在应用程序中这个variables是未定义的。 相反,我在ctx.req.query.access_token中find了ctx.req.query.access_token ,它是当前发送给服务器的access_tokenvariables。 这是我的问题 : 这个variables( ctx.req.query.access_token )总是可用,或者它只是因为loopback-explorer发送access_token作为GETvariables? 在生产模式下,应用程序是否需要将access_token作为GETvariables发送,还是应该作为标题中的Authorization发送? 为什么ctx.req.accessToken是未定义的? 这些事情会随着时间而改变吗? 导致大多数用户由于app.getCurrentContext()弃用而遇到此问题

环回当前上下文有时是空的

在我的回环应用程序中,我正在使用currentcontext获取当前login的用户,如下所示。 exports.getCurrentUserId =function(){ var ctx = loopback.getCurrentContext(); var accessToken = ctx && ctx.get('accessToken'); var userId = accessToken && accessToken.userId; return userId; } 当我调用这个方法getCurrentUserId ,它的工作很好,有时它给null 。 其不可预知的。 请分享你的想法。 提前致谢。 版本: loopback-connector-mongo:1.15.1

在环回中更新模型的id值

更新模型的id似乎不可能( DB:mysql )。 我尝试了下面的PUT请求: PUT http://localhost:3000/api/company/google { "name":"alphabet" } 响应: "error": { "name": "Error", "status": 400, "message": "id property (undefined) cannot be updated from undefined to undefined", "statusCode": 400, "stack":"….etc" } 如果不能通过内置的REST API,我该怎么做? 我可以使用节点API服务器端来更新模型的ID吗? 一直试着这两天,没有运气。 谢谢。

在环回中使用远程方法增加模型中的字段?

在模型中有一个称为counter的字段,每当我调用一个自定义的远程方法 Request URL http://loopback:3000/api/models/increment_counter Request body EMPTY Response { "counter" : [Value after Increment] } 目前要增量首先,我必须从数据库获取计数器值,并增加一个和更新couter值,这涉及到两个查询,是否有可能在单个NodeAPI调用,如下面的mysql query.I目前使用的是Mysql作为DB。 mysql_query(" UPDATE model SET counter = counter + 1 WHERE model_id = '1' "); 谢谢

从Loopback获取自定义的JSON响应

我做了一个简单的API使用Loopback.It工作正常,从这个URL给出下面的结果。 HTTP://本地主机:3000 / API /咖啡店 [ { "name": "Coffee shop 1", "city": "City one", "id": 1 } ] 我需要改变这个JSON到这个模板,通过使用Loopback中间件。 { "_embedded": { "CoffeeShops": [ { "name": "Coffee shop 1", "city": "City one", "_links": { "self": { "href": "http://localhost:3000/CoffeeShops/1" }, "CoffeeShop": { "href": "http://localhost:3000/CoffeeShops/1" } } } ] } }

使用ExpressJS环回

我已经研究并实践了用loopback和ExpressJS分别创buildRest Api的方法 使用Loopback时 ; 阅读所有的文档和学习环回特定的东西真的很耗时 它也使你能够在短时间内创build你的Api,并且里面有很多魔法东西。 我看到,如果我在使用环回开发时遇到问题。 我通常会陷入从社区寻找答案。 在使用ExpressJs时 几乎每个API都以相同的格式写入大量复制的代码。 你很舒服,可以轻松做任何事情。 但是与回送相比耗时。 我的意思是利用ExpressJs和Loopback的最好的部分 所以我的问题是“在ExpressJs中使用Loopback并使用Mongoose是否合理?” 与我的问题相关Loopback有一个关于在Loopback应用程序中添加ExpressJS路由的文档。 环回与快速路线 如果有意义的话,是否有文件夹结构的build议?

在回送中的REST连接器查询中复制密钥

我想问你是否知道我怎么可能在环回REST连接器查询中重复参数。 我有以下代码: details: { 'template': { 'method': 'GET', 'debug': true, 'url': 'https://www.example.com/data', 'timeout': 10000, 'headers': { 'Authorization': 'Bearer {token}' }, 'query': { q: 'PHOTOS' q: 'DETAILS', id: '{id}' }, 'options': { 'useQuerystring': true }, 'responsePath': '$' }, 'functions': { 'searchData': [ 'token', 'id' ] } } 问题在于,看起来loopback覆盖了最后一个参数q的值,因为我只获取最后一个参数的信息。 任何想法如何解决它? 谢谢你,

回环asynchronous/等待UnhandledPromiseRejectionWarning问题

在回环3当我实现asynchronous/等待在前保存操作挂钩 Entry.observe('before save', async (ctx, next) =>{ if(ctx.instance.images){ Entry.upload(ctx.instance.images[0].src).then(data => { ctx.instance.image = data; }); } }); 控制台打印这个错误 (node:29323) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Callback was already called. (node:29323) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero […]