【问题标题】:Show User's Instagram Photos on website在网站上显示用户的 Instagram 照片
【发布时间】:2015-12-07 12:00:15
【问题描述】:

我正在尝试在我的网站上展示我的最新照片。我曾经在以前版本的 Instagram API 上这样做,但现在它改变了我不能。

我在 Instagram 帐户上创建了一个应用程序,并按照文档中的说明执行了所有身份验证步骤,但它总是向我显示一个要求用户登录的屏幕。但是即使用户没有登录我也需要显示图片,在这个新的 API 版本中可以吗?

PS。我在服务器端使用 PHP。

谢谢。

【问题讨论】:

  • 添加代码sn-p和来自api的响应
  • 我正在按照文档中的描述进行操作。我正在使用正确的 client_id 和 redirect_url 访问此地址:api.instagram.com/oauth/authorize/… 它向我显示了登录和身份验证屏幕。问题是我需要一个访问令牌来显示照片,但没有登录就无法获得它。
  • 因此您希望正确地向访问您网站的人展示您的所有照片
  • 是的,没错。
  • 我不知道这是否对您有帮助,但我偶然发现了this site,它提供免费的 instagram 提要小部件,您可以将它们嵌入您的网站。他们已经更新了他们的应用程序以符合 Instagram 的新 API 更改。

标签: javascript php instagram instagram-api


【解决方案1】:

您可以通过他的身份验证获取用户的所有 Instagram 帖子。如果没有身份验证,您将无法在新的 api 系统中获取用户数据。在 new api 中,您可以获取他的帖子图片 url 并将其保存在您的数据库中。然后你可以通过这些 url 显示图像。

【讨论】:

  • 我明白了。但是难道不能在我自己的网站上为所有没有被浏览的人展示我自己的照片吗?我不能像以前那样使用令牌登录并且不要求查看者登录吗?
  • 登录后,您可以获得自己的身份验证令牌。通过使用该令牌,您可以向每个人显示图像。
  • 所以,我需要我的用户登录才能看到我的照片。如果他们登录,我只会得到这个令牌。我无法登录自己并为每个人保存这个令牌。
  • 不,你不需要这样做。您只需要保存自己的令牌。您的用户可以通过您的身份验证令牌看到您的图像
  • 不幸的是我做不到......看看他们的网站怎么说:Instagram API 需要身份验证 - 特别是代表用户提出的请求。经过身份验证的请求需要 access_token。这些令牌对用户来说是唯一的,应该安全地存储。访问令牌可能在将来的任何时间过期。 ...不要假设您的 access_token 永远有效。
【解决方案2】:
<?php
  function fetchData($url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 20);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
  }
  $result = fetchData("https://api.instagram.com/v1/users/ID-GOES-HERE/media/recent/?access_token=TOKEN-GOES-HERE");
  $result = json_decode($result);
  foreach ($result->data as $post) {
    // Do something with this data.
  }
?>

source

【讨论】:

  • 太棒了!这部分对我来说没问题,但是如何获得 access_token?如果用户已登录并接受其帐户中的应用程序,API 只会提供此令牌。我需要向所有访问者展示这些图片。
  • @LeonardoOberle 检查源链接那里给出的例子
  • 我明白了。但问题是,如果我确实喜欢它所说的,我的访问者需要登录 instagram 并接受应用程序的条款才能看到我的照片。我不能再在我的网站上为未登录的用户显示我的图片了吗?连我的照片都是公开的?我不知道该怎么做。
  • @LeonardoOberle 你实现这个逻辑了吗
猜你喜欢
  • 1970-01-01
  • 2014-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-09
  • 1970-01-01
  • 2010-10-08
相关资源
最近更新 更多