我正在尝试使用Twitter v1.1 API端点:
POST:https://api.twitter.com/1.1/statuses/update.json?status=%2A
-要么-
POST:https://api.twitter.com/1.1/statuses/update.json?status= *
在看到有关URL编码(百分比编码)的一些建议后,我正在尝试使用%2A对星号(*)进行编码
其他字符编码可以正常工作。但是星号字符会导致以下错误:
{ "errors": [{ "code": 32, "message": "Could not authenticate you." }]}
您可以使用API控制台工具重现错误:
https://dev.twitter.com/rest/tools/console2
对于身份验证,我选择了Oauth 1选项。
可以通过API发送单个*
作为状态更新 - 请参阅https://twitter.com/edent/status/664713007268823040
我怀疑您使用的库未正确计算OAuth签名。如果您向我们展示您使用的代码以及您依赖的库,这将有所帮助。
只需用星号*
替换星号*
即可。这对我来说非常有用
String tweet_text="Tweet text with asterisk *";
tweet_text= tweet_text.replaceAll("[*]","*");