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

使用CURL进行Snapchat API重定向用户授权报错求助

问题原因分析
  • 参数位置错误。Snapchat OAuth2 授权接口的client_id、redirect_url、response_type、scope均为查询参数,需要拼接在请求URL后,不能放在请求头(-H参数)中传递。
  • 命令换行格式错误。zsh: command not found: -H报错是因为命令换行时的反斜杠\后存在多余空格,或者粘贴时反斜杠丢失,导致终端将第二行的-H识别为独立命令执行,同时curl也因为没有读到完整的URL触发了格式错误提示。
  • 工具使用不符合预期。curl是纯命令行HTTP请求工具,无法自动唤起系统浏览器完成授权交互,你期望的跳转浏览器认证的效果,直接在浏览器地址栏访问拼接好的授权链接即可实现。
正确操作步骤
  1. 先拼接正确的授权URL,把占位符替换成你自己的实际参数:
https://accounts.snapchat.com/login/oauth2/authorize?client_id=你的客户端ID&redirect_url=你的回调地址&response_type=code&scope=snapchat-marketing-api

注意:redirect_url参数值必须和你在Snapchat开发者平台为当前应用配置的回调地址完全一致,包括协议、域名、路径、端口都不能有差异,否则授权过程会报错。

  1. 直接将上面拼接完成的完整URL复制到系统浏览器的地址栏访问,按照页面提示完成Snapchat账号登录和授权操作
  2. 授权完成后,浏览器会自动跳转到你填写的redirect_url对应的地址,地址栏中会附带code参数,这个就是你需要的临时授权码,拿到授权码后再调用换取令牌的接口即可获得access_token和refresh_token。

如果仅需要用curl测试授权接口的连通性,可参考如下正确写法,该请求不会唤起浏览器,只会返回授权页面的源码内容:

curl -X GET "https://accounts.snapchat.com/login/oauth2/authorize?client_id=替换为实际客户端ID&redirect_url=替换为实际回调地址&response_type=code&scope=snapchat-marketing-api"

内容的提问来源于stack exchange,提问作者ben890

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 09:18:00