You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Twitter API v2认证异常:401/403未授权,密钥令牌无误仍失败

解决Twitter API v2 401/403认证失败问题

问题根源

从你给出的错误信息来看,核心问题是你的Twitter开发者App未绑定到项目——Twitter API v2强制要求所有请求使用关联到项目的App密钥和令牌。Postman的401错误和Tweepy的403错误本质都是同一个认证规则导致的。

解决方案

1. 确认App已关联到开发者项目

  • 登录Twitter开发者平台,进入你的App页面
  • 检查App是否归属某个Project(页面顶部会显示所属项目名称)
  • 如果没有项目,先创建一个Project,再将现有App关联到项目中,或直接在Project下创建新的App

2. 核对令牌来源与认证方式

所有密钥/令牌必须来自绑定到项目的App,不同操作对应不同认证方式:

  • Tweepy代码调整:点赞操作需要用户级认证(OAuth 1.0a),确保client初始化时使用正确的用户令牌,修正后的代码示例:
import tweepy

# 替换为绑定项目的App生成的令牌
api_key = "你的API Key"
api_secret = "你的API Secret"
access_token = "你的Access Token"
access_token_secret = "你的Access Token Secret"

# 用OAuth1用户认证初始化Client(点赞需要用户上下文)
client = tweepy.Client(
    consumer_key=api_key,
    consumer_secret=api_secret,
    access_token=access_token,
    access_token_secret=access_token_secret
)

def like_tweet(tweet_id):
    try:
        response = client.like(tweet_id)
        if response.data:
            print(f"成功点赞推文 {tweet_id}")
        else:
            print(f"点赞失败: {response.errors}")
    except tweepy.TweepyException as e:
        print(f"错误: {e}")

like_tweet(1813606495118062034)
  • Postman配置:调用点赞接口(POST /2/users/{你的用户ID}/likes)时,需使用OAuth 1.0认证:
    1. 切换到Authorization标签,类型选择OAuth 1.0
    2. 填入对应的Consumer Key、Consumer Secret、Token、Token Secret
    3. 请求Body选择raw->JSON,内容为{"tweet_id": "1813606495118062034"}

3. 检查权限范围

确保你的App已申请并获得必要权限:

  • 点赞操作需要like.write权限
  • 同时需开启tweet.read、users.read基础权限
  • 在开发者平台的App权限设置页面提交权限申请,等待审核通过(部分权限需人工审核)

4. 重新生成令牌

在绑定项目的App页面,重新生成所有密钥/令牌:

  • 进入Keys and Tokens标签
  • 生成新的API Key and Secret、Access Token and Secret
  • 确保代码和Postman中使用的是最新生成的令牌

内容的提问来源于stack exchange,提问作者Diya Girish Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 19:31:05