Ibm cloud 使用移动应用程序安全性的节点应用程序在本地运行时抛出意外令牌u

Ibm cloud 使用移动应用程序安全性的节点应用程序在本地运行时抛出意外令牌u,ibm-cloud,Ibm Cloud,我有一个Node.js应用程序将部署到Bluemix。它利用了移动应用程序的安全性。在开发过程中,我在本地进行测试。当我从我的移动应用程序向本地服务器发出经过身份验证的呼叫时,我在终端中得到以下信息: [信息][默认值]已收到发送到的请求 /saucedb/v1/apps/38a0a550-b018-4a10-b879-AEC688C249/all SyntaxError:意外的令牌u at Object.parse(本机) 从vcapservices获取域名(/Users/raymondcam

我有一个Node.js应用程序将部署到Bluemix。它利用了移动应用程序的安全性。在开发过程中,我在本地进行测试。当我从我的移动应用程序向本地服务器发出经过身份验证的呼叫时,我在终端中得到以下信息:

[信息][默认值]已收到发送到的请求 /saucedb/v1/apps/38a0a550-b018-4a10-b879-AEC688C249/all SyntaxError:意外的令牌u at Object.parse(本机) 从vcapservices获取域名(/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/ibmsecurity/js/masauth.js:19:28) 在getDomainName(/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/ibmsecurity/js/masauth.js:99:22) 在getInternalMAMUrlServerName(/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/ibmsecurity/js/masauth.js:115:22) PostAssesserviceRequestValidator(/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/ibmsecurity/js/masauth.js:186:19) 在Layer.handle[作为handle_请求](/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/express/lib/router/Layer.js:82:5) 在trim_前缀(/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/express/lib/router/index.js:302:13) at/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/express/lib/router/index.js:270:7 位于Function.proto.process_参数(/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/express/lib/router/index.js:321:12) 在Immediate.next(/Users/raymondcamden/Dropbox/projects/saucedb/server/node_modules/express/lib/router/index.js:261:10)

据我所知,它在getDomainNameFromVcapServices中失败了。我在本地运行,没有一个合适的域,所以可能就是这样-但我不确定如何解决这个问题。

查看,它无法解析存储在VCAP_SERVICES环境参数中的应用程序凭据

var vcapService = JSON.parse(process.env['VCAP_SERVICES']); var vcapService=JSON.parse(process.env['VCAP_SERVICES']); 此值是在Cloud Foundry平台上运行时的值

您可以在本地设置相同的值:

$ export VCAP_SERVICES="..." $export VCAP_SERVICES=“…” 。。。在运行本地应用程序之前

使用以下命令查看可在本地使用的远程凭据

$ cf env APP_NAME $cf环境应用程序名称
这是有道理的——但是我应该用什么来获得价值呢?在Bluemix控制台中,您的应用程序仪表板应该显示应用程序丰富的所有服务。每个服务下都应该有一个按钮,上面写着“显示凭证”。你可以抄下来。啊,嗯,好吧,这很有道理。我会试试的。等一下。。。我需要一个字符串,而不是多个字符串,所以我需要将每个服务合并成一个JSON字符串吗?没有办法一次拿到所有的证书吗?好吧,我只拿到了MAS的证书,看起来效果不错。谢谢