JAX-RS 実装である Jersey を使用して作成した RESTful Java バックエンドがあります。このバックエンドは、ポート 8084 のグラスフィッシュ サーバーで実行されています。データを表示する HTML5/JS/AJAX ページもいくつか作成したので、REST 実装が機能していることがわかります。
Angular.js フレームワークを使用して、このアプリケーションの HTML5 / JS フロントエンドを開発しようとしていますが、問題が発生しています。ポート80のMicrosoftのIISで実行しているAngularでいくつかの小さなWebアプリケーションを開発することができました.
残念ながら、2 つのアプリケーション間の通信に問題があるようです。私は Angular を初めて使用するので、フロントエンド コードを間違えたのか、それとも CORS の問題が発生したのかわかりません。CORSフィルターを使用してTomcat 7でバックエンドを実行しようとしましたが、何も解決しませんでした。
私のAngularコードは次のようになります:
services.js
var serviceModule = angular.module('ServiceModule', ['ngResource']);
serviceModule.factory('NodeService', function($resource) {
var NodeService = $resource('http://localhost:port/HtmlJerseyJava/service/node/get/3',{},
{
'get' : { method: 'GET',params:{port:':8084'}}
}
)
return NodeService;
});
controllers.js
function NodeDetailCtrl($scope, NodeService){
var node3 = NodeService.get();
$scope.data = JSON.stringify(node3) ;
}
入力フィールドの値をビューからコントローラー、そしてサービスに渡す方法も理解する必要があるため、ここでは ID 3 をハードコーディングしました。最終的に、サービス URL の 3 は変数 :nodeId に置き換えられます。
どんな助けでも大歓迎です。