faq.md 3.3 KB

无法收到推送

在 App 设置中检查 Device Token 是否正常。如果不正常,参考 这里
如果正常,可以重启下设备,如果还不能接收到推送,检查推送请求返回状态码是否为 code 200。
排查都正常后还有问题可在Bark 问题反馈群反馈。

DeviceToken显示未知

这很有可能是设备没有正常连接到苹果服务器,伴随发生 iMessage 不可用、其他 App 推送也收不到等问题。
可以尝试切换网络、重启手机、如果翻墙代理了 Apple 服务可以关闭翻墙工具。
此问题是用户设备与苹果服务器的连接问题,作者并不能提供任何帮助,需自己尝试解决。

推送使用次数限制

正常请求(HTTP状态码为200)无任何限制。
但如果在5分钟内超过1000次错误请求(HTTP状态码为400 404 500)IP会被 BAN 24小时

莫名收到未知推送,比如 NoContent

可能的原因:

  1. 如果用 Safari 发送过推送,在Safari输入任意网址时,可能 Safari 对历史记录搜索进行自动补全时,正好补全成 Bark API 的 URL,然后预加载触发推送。
  2. 如果将 Bark API URL 发送到聊天软件如微信文件传输助手,微信会不定时的请求 URL 触发推送。
  3. 推送 Key 泄露,推荐在服务器列表页面重置 Key。

时效性通知无效

可以尝试重启设备来解决。

无法保存通知历史,或下拉推送没有点击复制按钮无法复制

可以尝试重启设备来解决。
因某些原因导致推送服务扩展(UNNotificationServiceExtension)未能正常运行,执行通知保存的代码未能正常执行。

自动复制推送失效

iOS 14.5 之后的版本因权限收紧,不能在收到推送时自动复制推送内容到剪切板。
可暂时先下拉推送或在锁屏界面左滑推送点查看即可自动复制,或点击弹出的推送复制按钮。

默认打开通知历史列表

再次开启APP时,会跳转到上次打开的页面。
只需退出APP时,停留在历史消息页面,再次打开APP时就是历史消息页面。

推送 API 是否支持 POST 请求?

Bark支持 GET POST ,支持使用Json
无论哪种请求方式,参数名都一样, 参考使用教程

推送特殊字符导致推送失败,比如 推送内容包含链接,或推送异常 比如 + 变成空格

这是因为整个链接不规范导致的问题,常发生在自己手动拼接URL时。
拼接URL时,注意将参数进行URL编码

# 例如
https://api.day.app/key/{推送内容}

# 如果{推送内容}是
"a/b/c/"

# 则最后拼接的URL是
https://api.day.app/key/a/b/c/
# 将找不到对应的路由,后端程序将返回404

# 应该将 {推送内容} url编码后再进行拼接
https://api.day.app/key/a%2Fb%2Fc%2F

如果是使用成熟的HTTP库时,参数都会被自动处理,无需自己手动编码。
但如果是自己去拼接URL时,则需要特别注意参数中的特殊字符,最好不管有没有特殊字符,无脑套一层URL编码

如何保障隐私安全

参考隐私安全