jQuery.ajax()通常、 set をコンテンツとしてX-Requested-Withヘッダーを送信します。XMLHttpRequestサーバー(PHP)では、通常、次のテストでこれを検出します。
$is_ajax = $_SERVER['HTTP_X_REQUESTED_WITH'] === 'XMLHttpRequest'
でよく見られるAngularJSでは$routeProvider.when()、 を使用してサーバーからテンプレートを取得できますtemplateUrl: '/path/on/server'。
私の問題は、templateUrlリクエストがヘッダーを設定していないように見えるため、リクエストを他のタイプのリクエストX-Requested-Withと区別する方法がないことです。templateUrl
として$routeProvider送信する方法はありますか?X-Requested-WithXMLHttpRequest
参照:
$routeProvider ドキュメント- (検索
templateUrl)jQuery jqXHR - 参照
jqXHR.setRequestHeader("X-Requested-With", "XMLHttpRequest")Google CDN
v1.1.5経由でAngular を使用する更新: Angular 開発者がから削除した実際のコミットを見つけました。なぜ彼らはそれをするのだろうか?
X-Requested-With$http.get更新: https://github.com/angular/angular.js/issues/1004 - ヘッダーが削除されたディスカッション。