【发布时间】:2018-10-21 08:33:49
【问题描述】:
我正在尝试一些网络编程。我编写了一个 python API,它将查询一个 SQL 数据库并返回一个 JSON。 API 按预期工作。
另一方面,我有一个控制器,我在其中发出 GET 请求以使用 JSON。
发出 GET 请求,API 开始滚动;但是,当 API 返回 JSON 时,浏览器的开发者控制台中会显示以下内容:
无法加载http://localhost:3000/api/s1r2_rep_fis: 没有'访问- 请求的资源上存在 Control-Allow-Origin' 标头。 Origin 'http://0.0.0.0:8000' 因此不允许访问。
我猜这是由于权限。我的 http 服务器是由 python 运行的:
python -m http.server
控制器代码为:
app.controller("test", function($scope, $http){
$http.get("http://localhost:3000/api/s1r2_rep_fis")
.then(function(response){
$scope.Clientes = response.data;
});
});
如果我混淆了一些术语/技术,请原谅我,这是我第一次使用 html/javascritp/angularJS。
任何帮助将不胜感激
【问题讨论】:
-
与后端调用无关,你是在调用不同的域
-
@epascarello 你对不同的域意味着什么?
-
我猜你是从一个端口加载 html 页面,而在另一个端口加载 python 代码
-
@epascarello 你是对的,API 是 listetint con localhost:3000 并且服务器在 localhost:8000 中运行。如果我将 API 端口更改为 8000,我会收到一条错误消息,指出地址已在使用中。
标签: javascript python html angularjs json