我有一个Restler驱动的API(api.example.com),我有一个开发人员的网站(developer.example.com)。我的目标是能够从后一个站点探索API。
但是当我将其添加到API Explorer选项时:discoveryUrl:“http://api.example.com/resources.json”它不起作用(显示“0:错误http://api.example.com/resources.json”),即使这些事实:
你能告诉我这个问题的原因是什么吗?
答案 0 :(得分:1)
这是因为浏览器限制javascript在没有适当许可的情况下不加载远程资源
从维基百科中了解有关Cross-origin resource sharing的更多信息
要启用跨域访问,请在api服务器上启用 crossOriginResourceSharing ,如以下示例所示
use Luracast\Restler\Restler;
use Luracast\Restler\Defaults;
require_once "../../../vendor/restler.php";
Defaults::$crossOriginResourceSharing = true;
$r = new Restler();
$r->addAPIClass('MinMax');
$r->addAPIClass('MinMaxFix');
$r->addAPIClass('Type');
$r->addAPIClass('Resources');
$r->handle();
以上示例现在位于http://restler3.luracast.com/tests/param/resources.json,您可能需要尝试使用远程资源管理器