使用Tweetinvi调用Twitter API所有请求均返回Forbidden错误该如何排查?
排查思路
- 首先检查Twitter Developer Portal的项目权限配置:默认新建的项目只有只读权限,没有发送推文的权限,需要手动在项目权限设置中修改为读写权限,修改后必须重新生成Access Token和Secret,旧的令牌不会同步更新权限。
- 确认你使用的开发者账号层级:当前Twitter免费层级的开发者账号仅支持v2版本的有限接口,如果调用v1.1版本的发推接口会直接返回403错误,需要升级到基础层级或调整代码强制调用v2接口。
- 核对令牌有效性:确认填入的
APIKey、API Secret、Access Token、Access Token Secret四个参数无拼写错误、无多余空格,且是权限调整后生成的最新令牌,你可以直接用开发者平台自带的测试工具填入相同令牌调用接口,若同样返回403即可确认和代码无关。 - 调整Tweetinvi的API版本配置,如果使用免费层级账号只能调用v2接口,可调整代码如下:
static async Task Main(string[] args) { var userClient = new TwitterClient("APIKey", "sAPIKey", "AccessToken", "sAccessToken"); // 强制指定调用v2版本接口 userClient.Config.ApiVersion = TwitterApiVersion.V2; var tweet = await userClient.Tweets.PublishTweetAsync("This is a test tweet"); Console.WriteLine(tweet); }
内容的提问来源于stack exchange,提问作者user17443495
相关产品推荐
相关产品推荐

