我正在尝试绑定PHP后端(MySQL数据库)和AngularJS前端。 我花了大约两天的时间阅读教程,感到很沮丧和时间。
基本上我正在使用这条线:
$http.get('/angular/index.php').success(function (data) {
console.log(data);
});
提出以下请求:
GET http://localhost:9000/angular/index.php 404 (Not Found)
问题是服务只能从以下网址访问:
angular/index.php
如何更改/使用Angular将请求发送到本地数据存储/数据库?
RESTful设置
虚拟主机:
<VirtualHost *:9000>
ServerAdmin webadmin
DocumentRoot "/Users/biggles/Sites/angular/app/ajax"
ServerName angular
ServerAlias angular
ErrorLog "/private/var/log/apache2/angular-error_log"
CustomLog "/private/var/log/apache2/angular-access_log" common
</VirtualHost>
主持文件:
127.0.0.1 angular
答案 0 :(得分:2)
要从角度应用中访问http://angular/index.php
,您只需使用以下代码段即可
angular
是您的主机名,不属于路径
$http.get('/index.php').success(function (data) {
console.log(data);
});
Angular $ http服务就像通常的链接一样:
如果您的网址以方案名称开头,例如。 http://
或//
$ http会尝试执行外部请求。但是,这需要CORS配置或JSONP。
如果您的网址以斜杠开头/
$ http将使用当前的方案名称,用户信息,主机名和端口,但将替换完整路径。
如果您的网址既不是方案名称也不是斜线,那么您的路径将是相对的。
来自维基百科:
foo://username:password@example.com:8042/over/there/index.dtb?type=animal&name=narwhal#nose
\_/ \_______________/ \_________/ \__/ \______________________/ \__/
| | | | | |
| userinfo hostname port query fragment
| \________________________________/\___________________/
scheme | |
name authority |
path
\_______________________________________/
|
host