2016-11-02 13 views
-1

ローカルサーバー上で完全にうまく動作するMVC Webサイトをvb.NETで作成しました。 Visual StudioのPublishメソッドを使用してリモートサーバーに公開しましたので、必要なファイルはすべてリモートサーバー上に配置する必要があります。 WebホスティングサービスはMVC 4と5を実行します。リモートサーバからページを実行すると、AngularJSコードはVBコントローラを見つけることができません。 AngularJSサービスでmvcのWebサイトが実動サーバー上で実行されない

部コードである:

getPasswords(); 
// get from passwordsController.vb 
function getPasswords() { 
    passwordService.getPasswords() 
     .success(function (passwords) { 
      $scope.passwords = passwords; 
     }) 
     .error(function (error) { 
      $scope.status = 'Error in getting passwords: ' + error.message; 
     }); 
}; 

VB制御コードは次のとおり:

' GET: api/passwords 
Function Getpasswords() As IQueryable(Of password) 
    Return db.passwords 
End Function 

関連するコードであるAngularJSコントローラセクションで

this.getPasswords = function() { 
    return $http.get("api/passwords"); 
}; 

行:

return $http.get("api/passwords"); 

は、VBコントローラのGetpasswords関数に接続しません。

ご協力いただければ幸いです。

+0

[ask]をお読みください。 _ "AngularJSコードが失敗しました" _十分に記述的ではありません。実際のエラーメッセージや何が起こったのかを含めて、あなたの研究を表示してください。 – CodeCaster

+0

正確なエラーは何ですか? –

答えて

1

おそらく、URLの問題です。あなたはapi/passwordsと呼んでいます。これは、ベースパスが再生されている場所からの相対パスになります。たとえば、既にhttp://example.com/foo/barのようなURLを使用している場合、実際にリクエストしているURLはhttp://example.com/foo/bar/api/passwordsですが、これはほぼ間違いです。常に/api/passwordsのようなパスを使用する必要があります。先行する/は、URLをドメイン相対にします(つまり、http://example.com/api/passwords)。

+0

問題は解決しました。 Chris Prattが示唆したように、それは経路の問題でした。 –

関連する問題