1

私はAngularJSが初めてです。IIS サーバーで .net MVC WebAPI Restful アプリを実行しています。http://xxx.xxx.xxx.xxx/api/projectで API をクエリすると、次の ようになります。

[{"Id":1,"Name":"Glenn Block","Created":"0001-01-01T00:00:00"},{"Id":2,"Name":"Dan Roth","Created":"0001-01-01T00:00:00"}]

次のような ProjectCtrl (別の空のプロジェクト) を作成しました。

angular.module('Project', ['ngResource']);

function ProjectCtrl($scope, $resource) {
    $scope.project = $resource('http://192.168.1.221/api/project'
    );
    $scope.project.get(function (data) {
        console.log('success, got data: ', data);
    }, function (err) {
        alert('request failed');
    });
}

私はいつも失敗します。サーバー上の CORS の問題に対処しましたが、リクエスト ヘッダーに次の内容が含まれています

Access-Control-Request-He...    x-requested-with
Access-Control-Request-Me...    GET

私が奇妙だと思うのは、firebug を見ると get を実行せず、ステータスが 200 の Option プロジェクトが表示されることです。

何が欠けているのかわかりません。

4

2 に答える 2

1

コメントに記載されているエラー「エラー: a.push は関数ではありません」は、応答が配列であるためです。では、応答が配列の場合に関数$resourceを使用します。query

于 2013-07-09T17:47:16.657 に答える