我将我的应用程序移动到我自己的服务器上,除了一个小问题外,一切都很好用:我将服务器URL添加到JS中:
Parse.initialize("0B5jvlihE6yxQed1w9vRSRW0DRldy3fbwqaCjpyF", "mJid6m5wPuWICUNhqm6KrG83pWudt2Y3pumEiaY2");
Parse.serverURL = 'http://www.jobninja.eu:1337/parse'
一切都很好但是,它提出了这样的请求:
curl' http://www.jobninja.eu:1337/parse/1/classes/Category' -H' Pragma:no-cache' -H'原产地:http://0.0.0.0:8080' -H'接受编码:gzip,deflate' -H' Accept-Language:de-DE,de; q = 0.8,en-US; q = 0.6,en; q = 0.4,fr; q = 0.2' -H'用户代理:Mozilla / 5.0(Macintosh; Intel Mac OS X 10_10_5)AppleWebKit / 537.36(KHTML,如Gecko)Chrome / 49.0.2623.87 Safari / 537.36' -H'内容类型:text / plain' -H'接受: / ' -H'缓存控制:无缓存' -H' Referer:http://0.0.0.0:8080/' -H'连接:保持活力' --data-binary' {" where":{}," order":" title"," _method":& #34; GET"" _ApplicationId":" 0B5jvlihE6yxQed1w9vRSRW0DRldy3fbwqaCjpyF"" _JavaScriptKey":" mJid6m5wPuWICUNhqm6KrG83pWudt2Y3pumEiaY2"" _ClientVersion&# 34;:" js1.6.7"" _InstallationId":" be5bdfe1-ed0c-60bf-0d49-c5fcfdefad29"}' --compressed
我的Parse服务器不理解这些,但很清楚这些:
curl' http://www.jobninja.eu:1337/parse/classes/Category' -H' Pragma:no-cache' -H'原产地:http://0.0.0.0:8080' -H'接受编码:gzip,deflate' -H' Accept-Language:de-DE,de; q = 0.8,en-US; q = 0.6,en; q = 0.4,fr; q = 0.2' -H'用户代理:Mozilla / 5.0(Macintosh; Intel Mac OS X 10_10_5)AppleWebKit / 537.36(KHTML,如Gecko)Chrome / 49.0.2623.87 Safari / 537.36' -H'内容类型:text / plain' -H'接受: / ' -H'缓存控制:无缓存' -H' Referer:http://0.0.0.0:8080/' -H'连接:保持活力' --data-binary' {" where":{}," order":" title"," _method":& #34; GET"" _ApplicationId":" 0B5jvlihE6yxQed1w9vRSRW0DRldy3fbwqaCjpyF"" _JavaScriptKey":" mJid6m5wPuWICUNhqm6KrG83pWudt2Y3pumEiaY2"" _ClientVersion&# 34;:" js1.6.7"" _InstallationId":" be5bdfe1-ed0c-60bf-0d49-c5fcfdefad29"}' --compressed
这两个请求之间的唯一区别是,在第二个请求中,我删除了网址中的/1/
。
你知道我在JS部分错过了什么导致了这个错误吗?
顺便说一句,我将JSParseSDK升级到最新版本,并在serverUrl
变量中使用和不使用斜杠的版本。
答案 0 :(得分:2)
问题是/ parse / 1
我认为您使用了解析服务器示例作为参考,并且它在/ parse中安装了解析API(而不是/ parse / 1)。因此,您必须更改所有请求/解析或更改您的解析服务器以在/ parse / 1中挂载解析api
答案 1 :(得分:0)
客户端密钥不是必需的,javascript可以在没有它的情况下工作,也就是你在serverURL之后缺少一个分号...这似乎不是Javascript的问题,但是对于你的服务器,检查服务器上的index.js < / p>
答案 2 :(得分:0)
使用parse-server
时不再需要客户端密钥客户代码:
//Initialize my Local Host App
Parse.initialize("app");
Parse.serverURL = 'http://localhost:1337/parse';
服务器代码:
var api = new ParseServer({
databaseURI: databaseUri || 'mongodb://localhost:27017/dev',
cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
appId: process.env.APP_ID || 'app',
masterKey: process.env.MASTER_KEY || 'master', //Add your master key here. Keep it secret!
serverURL: process.env.SERVER_URL || 'http://localhost:1337/parse', // Don't forget to change to https if needed
liveQuery: {
classNames: ["Posts", "Comments"] // List of classes to support for query subscriptions
},
答案 3 :(得分:0)
我遇到了这个问题,因为我使用的是旧版本的parse.com代码。 显然,http://www.parsecdn.com/js/parse-1.2.13.min.js处的版本会自动将/ 1 /附加到您提供的网址上。将其更改为使用版本1.6.14(https://parse.com/apps/quickstart#parse_data/web/existing推荐的版本)修复了问题。