Dav*_* TG 5 facebook-graph-api docker
我在本地的 Docker 容器中使用 Laravel 在网站上工作。使用的网络服务器是 Nginx。
我正在尝试实现 Facebook 的 Graph API(PHP API),并且当我在本地主机上开发并使用 Docker 时,任何时候我想使用该 API 时都会得到:
无法加载 URL:此 URL 的域未包含在应用程序的域中。为了能够加载此 URL,请将您应用的所有域和子域添加到应用设置中的“应用域”字段。
我尝试添加我在本地使用的域myapp.local:3000,也<my ip>:3000或localhost:3000但没有任何效果。
这是代码:
public function facebookRequest() {
$fb = new \Facebook\Facebook([
'app_id' => 'MY_APP_ID',
'app_secret' => 'MY_APP_SECRET',
'default_graph_version' => 'v8.0',
]);
$callback = 'users/get-facebook-photos';
$helper = $fb->getRedirectLoginHelper();
$permissions = ['user_photos'];
$data['fb_url'] = $helper->getLoginUrl($callback, $permissions);
$loginUrl = $helper->getLoginUrl(base_url().'/users/get-facebook-photos', $permissions);
echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
}
Run Code Online (Sandbox Code Playgroud)
我需要做什么才能使用 Graph API 和 Docker 进行开发?有一些选项可以绕过域过滤器,或者我应该怎么做?
终于找到了一个解决方案(不是我想要的)。我正在使用主机文件上定义的自定义域。这对 Facebook 不起作用。我需要在 Facebook Developers 上使用 localhost(甚至不是 127.0.0.1)并将 localhost 列入白名单。
因此,如果您遇到此问题,您可以执行此解决方法并使用 localhost 而不是自定义域。尽管如此,我理想的解决方案是使用自定义域。
| 归档时间: |
|
| 查看次数: |
160 次 |
| 最近记录: |