Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Curl Instagram实时API回调URL转义_Curl_Instagram - Fatal编程技术网

Curl Instagram实时API回调URL转义

Curl Instagram实时API回调URL转义,curl,instagram,Curl,Instagram,当用户发布图片时,我使用接收实时更新这一切都已设置好,工作正常。今天它决定不工作了 已采取的调试步骤: 客户端/应用程序已在Instagram中注册 验证至少有一个用户已订阅。。。我知道这一点,因为当我得到这个响应时(example.com代替了实际域) { “元”:{“代码”:200}, “数据:[{ “对象”:“用户”, “对象id”:空, “方面”:“媒体”, “回调url”:“http:\/\/example.com\/common\/instagram\/subscriptions”,

当用户发布图片时,我使用接收实时更新这一切都已设置好,工作正常。今天它决定不工作了

已采取的调试步骤:

  • 客户端/应用程序已在Instagram中注册
  • 验证至少有一个用户已订阅。。。我知道这一点,因为当我得到这个响应时(example.com代替了实际域)

    { “元”:{“代码”:200}, “数据:[{ “对象”:“用户”, “对象id”:空, “方面”:“媒体”, “回调url”:“
    http:\/\/example.com\/common\/instagram\/subscriptions
    ”, “类型”:“订阅”, “id”:“4270301” }] }

  • 创建新应用程序并从头开始(结果相同)
  • 很明显,回调url出现了一些奇怪的情况。你可以看到没有反斜杠。我在尝试通过curl订阅新用户时也遇到了同样的情况,格式与curl完全相同。Instagram尝试使用“
    http:\/\/example.com\/common\/Instagram\/subscriptions
    ”并返回”无法访问回调URL”

    我已经阅读了很多关于API的其他问题,但似乎没有人报告类似的问题。现在已经有多个类似问题的其他报告(参见等)。目前我唯一的猜测是问题出在Instagram方面,但希望我忽略了一些事情或犯了一个愚蠢的错误

    感谢所有能为我指明正确方向的人。干杯


    回调url很好。您看到的额外
    \
    是由于JSON编码
    /
    字符的方式。请查看此处的转义规则:

    真正的问题是Instagram的实时订阅API在过去几天里似乎出现了问题。有关链接,请参见@DanShev的评论

    同时,我有一个系统,可以定期查看用户的照片,查找我感兴趣的照片。我的代码(Python)如下所示:

    from instagram import client
    users = InstagramUser.objects.all()
    for user in users:
        api = client.InstagramAPI(access_token=user.access_token)
        user_media, paginate_url = api.user_recent_media(user_id=user.instagram_user_id)
        for media in user_media:
            # Check if this is a media we've already gotten via subscription update
            # Do somethign with the media
    

    在过去的几天里,我也遇到了同样的问题。作为最后的努力,我尝试使用API清除所有订阅,以防在system.YMMV中出现孤儿,但这最终解决了我的“无法访问回调url”问题

    API文档的最后一节提供了详细信息。要从命令行快速测试,请尝试一下他们的curl示例:

    curl -X DELETE 'https://api.instagram.com/v1/subscriptions?client_secret=CLIENT-SECRET&object=all&client_id=CLIENT-ID'
    

    如果这最终对您有效,我建议在启动新订阅之前更新您的应用程序代码,删除给定客户端id的任何现有订阅。当然,这只有在您限制自己为每组凭据创建一个订阅时才可行。如果您创建多个订阅,您需要跟踪构成活动订阅的查询,以及在重新创建之前删除已经存在的查询。

    这实际上是Instagram端的一个bug。他们修复了它,现在应该可以正常工作。

    在过去几天里,我一直无法访问回叫URL。在那之前,一切都很正常……相同:和及