Angular JS为请求设置基本API URL

时间:2014-11-05 14:02:28

标签: angularjs symfony

我正在构建一个AngularJS应用程序,这就是我所拥有的:

App.js

var youtubeTrackerApp = angular.module('youtubeTrackerApp', [
    'youtubeTrackerControllers',
    'youtubeTrackerServices'
]);

Services.js

var youtubeTrackerServices = angular.module('youtubeTrackerServices', ['ngResource']);

youtubeTrackerServices.factory('YouTubeVideo', function($http) {
    var YouTubeVideo = function(data) {
        angular.extend(this, data);
    }

    YouTubeVideo.get = function(id) {
        return $http.get('/Api/YouTubeVideo/' + id).then(function(response) {
            return new YouTubeVideo(response.data);
        });
    };

    YouTubeVideo.prototype.create = function() {
        var youTubeVideo = this;
        return $http.post('Api/YouTubeVideo/', youTubeVideo).then(function(response) {
            youTubeVideo.id = response.data.id;
            return youTubeVideo;
        });
    }

    return YouTubeVideo;
});

问题是Angular发布如下:

http://localhost/Api/YouTubeVideo/123

在我开发的同时,我需要将其发布到

http://localhost/youtubetracker/web/app_dev.php/Api/YouTubeVideo/123

因为我正在使用Symfony。我是AngularJS的新手,我似乎无法弄清楚如何在localhost和端点之间注入基本URL。

欢迎任何其他提示结合Symfony和Angular。

1 个答案:

答案 0 :(得分:0)

当使用PHP端点时,我会建议入侵.htaccess文件

像这样的东西

    RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^(.*)$ api.php?x=$1 [QSA,NC,L]

RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*)$ api.php [QSA,NC,L]

RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^(.*)$ api.php [QSA,NC,L]   

http.get youtubetracker / web / app_dev / Api / YouTubeVideo / 123 youtubetracker / web / app_dev / Api /中的php api文件 我假设YouTubeVideo& 123 params