-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Twitter (X) 未设置 Auth Token 时报错 Twitter web API error: 404
#81
Comments
因为现在只是匹配 twitter.com,所以 fxtwitter.com 这类以 twitter.com 结尾的域名应该都能被匹配并当作 Twitter 处理。如果只是希望当作 Twitter 链接处理但继续使用官方 API 的话我考虑一下提供配置域名的方案,不过可能需要修改 Python 文件而不是配置环境变量。
Nitter 实例貌似并没有提供 API 接口,所以不能当作 Twitter API 的备用选项,其自身也没有类似的接口,无法获取到跟官方 API 相似的推文详细数据,即使要支持也得当作新的图源处理。
Nitter 和这类客户端应该依然使用的是官方 API,所以理论上无法绕过接口限制,但调用 API 的方法可以作为参考。不过我这边 Twitter 的功能依然正常,不知道你那边是什么问题,最好还是具体看一下原因。报错 |
Telegram 消息为 后台 Log
冒号后的内容似乎没有在 Telegram 侧提示。这里提示 404,但推文确实存在。
加入 Nitter 是为了 Fallback 保障可用性。但 Nitter 的确未提供 REST API (在 Roadmap 但已三年未解决),可能不太方便加入。是我考虑不周,请见谅。
在两种网络环境下打开同一个链接 Note 环境1 (称之为“脏IP环境”)
环境2 (称之为“干净IP环境”)
由于“脏IP环境”中,Fritter 和 Nazurin 出现了相同的错误 我并不了解编程,所以我在这里提出一个浅薄的观点: Fritter 和 Nazurin 调用 Twitter API 的方式会受到 Twitter 的风控,而 Squawker 调用 Twitter API 的方式一定程度上缓解(绕过)了这种风控。 非常感谢您对这个 issue 的关注。 |
是所有的推文都会出现问题还是特定推文才会?如果是特定推文的话,该推文有没有某种特殊性,例如 NSFW、作者限制可见性? 方便的话可否提供具体例子?如果不方便公开的话可以使用 PGP 加密,将 Recipient 设置为我 ( 之后我会看一下 Squawker 调用 Twitter API 的方式,但如果没有错误复现方法的话恐怕难以测试。 |
所有推文。 以 40原 老师的推文为例: https://twitter.com/40hara/status/1283175216773046272
|
我大概知道原因了,应该是你没有设置你自己的 auth token,目前的 Twitter API 和 Authorization Token 需要登录才能使用,而 Fritter 使用的 Authorization Token 不需要登录(但是这样无法浏览敏感推文)。我在 fix/twitter-api 分支放了新的代码,你可以试一下,如果还是不行的话代码里还有几个可切换的选项(94行和 130行),可以试试。 |
Twitter web API error: 404
希望在 文档的 Twitter 章节 (Src) 添加相应说明。 |
Twitter web API error: 404
Twitter web API error: 404
再帮我测试一下 这算是个 bug,所以 Issue 我先开着,等正式修复了再关 |
|
问题描述
参考 #80 ,Twitter (X) 仍对接口调用有限制,旧版本 Nazurin 会报错
Response Error: 0 Attempt to decode JSON with unexpected mimetype:
,新版本 Nazurin 会报错Twitter web API error:
。希望 Nazurin 引入绕过 Twitter (X) 接口限制的措施,具体如下:
建议措施
加入对 Nitter 的支持
Nitter 是一个活跃地维护的 Twitter (X) 的隐私替代前端,可以支持 Nitter 以绕过 Twitter (X) 的直接限制。
用户应当可以自行配置两个 list,允许用户自定义 Nitter 实例作为 Twitter (X) 的替代方案,如:
X_FIX_LINK
用于接受 Fix Twitter Link 服务的链接,即遇到这些域,可以视为twitter.com
继续处理。也可以在程序中预置这些域,推荐参考 https://github.com/jonjomckay/fritter/blob/master/android/app/src/main/AndroidManifest.xml 内给出的域列表。NITTER_INST
用于配置 Nitter 实例的域。当NITTER_INST
未配置或为空 List 时,应当仅向twitter.com
发出请求。当NITTER_INST
已配置时,应当先请求twitter.com
,如失败再依次向NITTER_INST
中的实例请求,直到成功或没有可用的实例。参考第三方客户端绕过接口限制的措施
一些第三方客户端已经引入了绕过 Twitter (X) 接口限制的方法,如 TheHCJ/Quacker 和 j-fbriere/squawker ,可以作为参考。
希望您可以参考上述两种方案引入绕过 Twitter (X) 接口限制的措施,谢谢。
The text was updated successfully, but these errors were encountered: