2014-11-05 88 views
1

我建立一個AngularJS應用此基礎API網址是什麼,我有個大氣壓:角JS設置請求

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的新手,我似乎無法弄清楚如何在本地主機和端點之間插入基本URL。

歡迎任何結合Symfony和Angular的其他技巧。使用PHP的終點,我建議黑客進入.htaccess文件

像這樣的事情

RewriteEngine敘述在

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 /網頁時

+0

您可以使用提供者,通過這種方式,您可以在配置階段設置基本API網址:https://docs.angularjs.org/guide/providers#provider-recipe – 2014-11-05 14:10:49

回答

0

/app_dev/Api/YouTube視頻/ 123 php api文件在youtubetracker/web/app_dev/Api/ i假設YouTube視頻& 123 params