其他开发者。
我正在迁移使用Parse Hosted的应用,新代码将在Node.JS(带快速)内运行。我在解决问题时遇到了一些困难:我的JavaScript SDK请求总是返回"无法GET / parse / 1 / login" ,就好像我在请求无效的快递路线。我知道它是有效的,因为如果我在没有正确appID的情况下重现呼叫,它将返回{"error":"unauthorized"}
消息。
我正在使用Parse docs中的Node.JS代码尝试最基本的可能版本:
var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var app = express();
var api = new ParseServer({
databaseURI: 'mongodb://localhost:27017/dev', // Connection string for your MongoDB database
cloud: '/home/myApp/cloud/main.js', // Absolute path to your Cloud Code
appId: 'myAppId',
masterKey: 'myMasterKey', // Keep this key secret!
fileKey: 'optionalFileKey',
serverURL: 'http://localhost:1337/parse' // Don't forget to change to https if needed
});
// Serve the Parse API on the /parse URL prefix
app.use('/parse', api);
app.listen(1337, function() {
console.log('parse-server-example running on port 1337.');
});
Node.JS服务器运行正常,我甚至可以使用cURL请求查询数据,完全没有问题。
我的登录代码也是最基本的可能版本,在加载JS SDK的页面中直接运行到浏览器控制台:
Parse.User.logIn("user", "pass", {
success: function(user) {
console.log('ok', user);
},
error: function(user, error) {
console.log('error', user, error);
}
});
返回只是Cannot GET /parse/1/login
(它似乎来自Express,但如果我删除了appID ,则消息会更改,因此我知道解析服务器正在获取它)。值得注意的是,如果我针对 api.parse.com 服务器发出这个调用,那么这个调用完全相同:{"code":101,"error":"invalid login parameters"}
有什么想法吗?
答案 0 :(得分:2)
对不起,伙计们,我刚刚发现问题是JS SDK版本。真的是错误的,但我无法想象它需要更改SDK,因为新的Parse Server应该与Hosted版本兼容。
为了记录,我在JS SDK版本1.6.7 ,我更新到1.6.14 ,它现在运行正常。