我在我的UWP javascript应用程序中使用Parse javascript SDK。正如快速入门中所提到的,我正在使用以下行初始化Parse,
Path = (*env)->GetStringUTFChars( env, path, null) ;
但它不会在Parse仪表板中创建安装对象。另外,如文档中所述,
安装数据只能由客户端SDK,数据浏览器或REST API修改。
我试图按照一些答案创建安装对象,https://stackoverflow.com/a/32599778,但我无法让它正常工作。有关如何创建安装对象的任何想法?感谢
答案 0 :(得分:1)
您首先需要生成一个" native"设备的安装ID。您可以使用Parse javascript平台已经生成的那个,但生成一个新平台并不难。只是模仿已经在Parse源代码中完成的工作:
function generateInstallationId(){
function hexOctet() {
return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
}
return hexOctet() + hexOctet() + '-' + hexOctet() + '-' + hexOctet() + '-' + hexOctet() + '-' + hexOctet() + hexOctet() + hexOctet();
}
然后构造适当的xhr标头。由于我们模仿本机Parse SDK使用REST的方式,我们使用dotNet密钥或客户端密钥,而不是javascript密钥。
var xhrHeaders = {
"Content-Type": "application/json",
"X-Parse-Application-Id": YOUR_APP_ID,
"X-Parse-Windows-Key": YOUR_DOTNET_KEY
};
然后构造您的安装对象数据,以便它通过服务器验证。
var installationData = {
appIdentifier: "your.app.package",
appName: "appName",
appVersion: "1.0.0",
deviceType: "winrt",
deviceUris: {_Default: YOUR_WNS_CHANNEL_URI},
timeZone: "America/Los_Angeles",
localeIdentifier: "en-US",
parseVersion: "1.7.0.0",
installationId: generateInstallationId()
}
最后,进行REST调用
WinJS.xhr({
type: "POST",
url: "https://api.parse.com/1/installations",
headers: xhrHeaders,
data: JSON.stringify(installationData)
});
我从parse-push-plugin中挑选了大部分代码,尤其是this file。如果您需要更多上下文或想要了解如何获得WNS频道,请随时查看。