我尝试在Node.JS环境中使用axios库执行POST https://api.sandbox.push.apple.com/messages/send/3/device/<TOKEN>。执行请求时,会抛出以下错误:Error: Parse Error: Expected HTTP/个当使用http2包尝试相同的请求时,它按预期工作,但我不想在我的项目中维护两个http请求包,我强烈推荐axios。这是缺少的配置吗?
axios
POST https://api.sandbox.push.apple.com/messages/send/3/device/<TOKEN>
Error: Parse Error: Expected HTTP/
http2
rqcrx0a61#
验证是否已在axios请求中设置了适当的标头。在APNs(Apple Push Notification服务)的上下文中,您需要设置apns-topic头。它应该看起来像这样:
const axios = require('axios'); const headers = { 'apns-topic': 'your.bundle.id', 'Authorization': `Bearer ${yourAuthenticationToken}`, 'Content-Type': 'application/json', }; const data = { // Your notification payload here }; axios.post('https://api.sandbox.push.apple.com/3/device/<TOKEN>', data, { headers }) .then(response => { // Handle the response }) .catch(error => { // Handle errors });
字符串
bbmckpt72#
尝试使用HTTP协议发送请求,如下所示:
http://api.sandbox.push.apple.com/messages/send/3/device/<TOKEN>
2条答案
按热度按时间rqcrx0a61#
验证是否已在axios请求中设置了适当的标头。在APNs(Apple Push Notification服务)的上下文中,您需要设置apns-topic头。它应该看起来像这样:
字符串
bbmckpt72#
尝试使用HTTP协议发送请求,如下所示:
字符串