调用POST请求时是否需要Enforce Signed Header?

时间:2015-01-29 15:50:24

标签: java android http-headers instagram

在创建我的Android应用时,我很难在我的Feed上喜欢照片,如果我没记错,解决方法是在创建instagram对象时提供强制签名标头。但是,如果我查看API文档,它会说:

  

重要提示您的客户端密钥应始终保持安全。   不要与任何人分享这个秘密,不要将它包含在java脚本中   代码或移动客户端。 没有服务器端的移动应用   组件不应使用Enforce signed header设置。您有   能够在任何时候将客户端密钥重置为新值,如果   你怀疑它被泄露了。

但是,当我禁用强制签名标题时,喜欢这些标题并不起作用。使用Enforce Signed Header时,我通过http://myip.dnsomatic.com/提供设备的远程IP,并提供HTTP请求来解析网页。

再次引用dev API:

  

如果启用了强制签名标头,则以下端点需要X-Insta-Forwarded-For标头:

     
      
  • POST / users / {user_id} / relationship
  •   
  • POST / media / {media_id} / comments
  •   
  • DEL / media / {media_id} / comments / {comment_id}
  •   
  • POST / media / {media_id} / likes
  •   
  • DEL / media / {media_id} / likes
  •   

所以基本上它说(以及我从这个引用得到的)是这些端点需要X-Insta-Forwarded-For标头如果启用了强制签名标头。因此,如果禁用强制签名标题,则表示不需要该标题。

我这样做是对的,还是我能够在没有强制签名标题的情况下喜欢照片和视频?

我今天晚些时候尝试在没有强制签名标题的情况下尝试喜欢照片时编辑此内容并发布日志。谢谢!

另一个快速问题,在上述文档的引用中,他们说不在代码中包含客户端密钥,但需要Client Secret来创建instagram对象。你是如何解决这一挑战的?现在我将客户端密码存储在我的应用程序中的加密密钥中,这是一个好方法吗?

感谢您的所有提示,

2 个答案:

答案 0 :(得分:1)

如果你不使用Enforce Signed Header(和X-Insta-Forwarded-For),那么你仍然可以喜欢,评论和关注/取消关注,但你会有喜欢/小时或跟随/小时的下限。

使用签名呼叫与未签名呼叫时,请检查此页面的限制: http://instagram.com/developer/limits/

答案 1 :(得分:0)

我错了Enforce Signed Header不需要在Instagram上使用发布请求。使用我的应用程序时清理logcat。

谢谢!