0
アプリケーションのバックエンドでGCMメッセージングを設定しようとしています。Node.jsのGCM要求のメッセージ
バックエンドはNode.jsの
で実行されているこれは、私が使用しているコードは次のとおりです。
var apiKey = "AIz*******";
var postData = JSON.stringify({
"notification": {
"title": "Hello World"
}
});
var options = {
host: 'android.googleapis.com',
port: 443,
path: '/gcm/send',
method: 'POST',
headers: {
'Authorization': 'key=' + apiKey,
'Content-Type': 'application/json',
'Content-Length': Buffer.byteLength(postData)
}
};
var rqst = https.request(options, (response) => {
var responseBody = '';
response.setEncoding('utf8');
response.on('data', (chunk) => {
responseBody += chunk;
});
response.on('end',() => {
res.send(responseBody)
});
});
rqst.on('error', (e) => {
console.log('problem with request: ${e.message}');
});
rqst.write(postData);
rqst.end();
しかし、私はいつも401答え受け取る:
<HTML>
<HEAD>
<TITLE>Unauthorized</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Unauthorized</H1>
<H2>Error 401</H2>
</BODY>
</HTML>
APIキーをGoogleデベロッパーコンソールからのテイクを使用します。
私は何かが足りないのですか?
なぜ私のリクエストが承認されていないのですか?
このAPIを有効にしましたか? – Vyacheslav
それは良い点です。それを有効にする必要があります。プロジェクトのDashboard APIセクションのスクリーンショットを編集して追加します。私は「Google Cloud Messaging」を有効にしています。どういうわけか、ある種の接続/起点を許可するべきでしょうか? – BkdD
NodeJSをWebサーバーとして使用しているので、Noneの代わりにIP Addresses APIキータイプを使用しようとしましたか? – noogui