2017-09-20 13 views
0

私は、Web APIメソッドをAPIから呼び出してトークンを検証するシングルサインオンをレポートベンダと統合しています。ローカルにホストされているAPIを使用してローカルマシンからこれをテストすると、このWeb APIメソッドにアクセスできるようになり、ユーザーは有効なトークンで検証され、SSOはスムーズに機能します。この変更をAzureに公開すると、この検証メソッドは呼び出されず、SSOは機能しません。私は何が欠けているか、またはこのWeb APIが呼び出されることを確かめるためにAzureの私のアプリケーションサービスで何かする必要があるものがあります。これはAzureで公開されたときにスキップされるように見えますが、これはローカルマシン上では問題なく動作します。私のglobal.asaxで次にAzureでホストされているサイトでWebAPIメソッドが認識されない

[RoutePrefix("api/reporting")] 
public class ReportingAPIController : ApiController 
{ 
    [HttpGet] 
    [Route("validateVendorAuthToken")] 
    public UserInfo ValidateVendorAuthToken(string access_token) 
    { 
     var userInfo = Infrastructure.ReportingVendor.TokenAuthorization.GetUserInfo(access_token); 
     return userInfo; 
    } 
} 
public static class WebApiConfig 
{ 
    public static void Register(HttpConfiguration config) 
    { 
     // TODO: Add any additional configuration code. 

     // Web API routes 
     config.MapHttpAttributeRoutes(); 

     config.Routes.MapHttpRoute(
      name: "ActionApi", 
      routeTemplate: "api/{controller}/{id}", 
      defaults: new { id = RouteParameter.Optional } 
     ); 
     config.Routes.MapHttpRoute(
      name: "DefaultApi", 
      routeTemplate: "api/{controller}/{action}/{id}", 
      defaults: new { id = RouteParameter.Optional } 
     ); 
    } 
} 

、ValidateVendorAuthTokenを呼び出すために

GlobalConfiguration.Configure(WebApiConfig.Register); 

、我々はベンダーのAPIのSQLデータベース内のフィールド値は、http://mysite.azurewebsites.net/api/reporting/validateVendorAuthTokenとしてこのルートに一致するように供給し、その後、トークンを取得生成される。

ローカルマシンでテストするには、この値をhttp://localhost:69808/api/reporting/validateVendorAuthTokenに変更します。

これはローカルで動作するので、サイトがAzureでホストされているときにこのWeb APIメソッドが呼び出されないという結論に達しました。 Azureで何かする必要があるのですか、または私のアプリケーションで欠けていることがありますか?

何か助けや指示があれば幸いです。

答えて

0

これは長時間ですが、フィールド値に日付が含まれていますか?私のローカルマシンでのテストはうまくいきましたが、青空に展開するとすぐにクラッシュし、英国のフォーマットされた日付は12ヶ月を超えるものと解釈され、手がかりはほとんど出ませんでした。あなたの時間を無駄にしていたら、お詫び!

+0

こんにちはAdnan、ようこそ!これは現在フォーマットされているため、これは**回答**ではありません。十分な評判が得られれば**コメント**を残すことができます。その間、**解答**の使用を控えてください。 –

+0

@Adnan:誰もしません。 – bladerunner

関連する問題