2011-01-03 6 views
0

Ich versuche, die Site-Login-Funktion als Single-Sign-On zu erstellen. einige, wie ich auf die Seite Janrain kam, wo ich die APIs dazu fand. Ich versuche das auch in meiner asp.net MVC-Anwendung. so dass ich die über here angegebenen Schritte befolgte, folgte ich genauen Schritten, was gegeben wird, so dass ich denke, dass hier kein Code angegeben werden muss. Aber in meinem Handeln als:RPXLib.dll wirft die Ausnahme Der Remote-Server hat einen Fehler zurückgegeben: (500) Interner Serverfehler

public bool signin(string token) 
     { 
      // string token = token_url; 
      RPXLib.RPXService service = new RPXLib.RPXService(new RPXLib.RPXApiSettings("https://singlesignontest.rpxnow.com/api/v2/auth_info", "56fd9a76a5da4dffb9a437fe09564544b209c622")); 
      try 
      { 
       RPXLib.Data.RPXAuthenticationDetails userDetails = service.GetUserData(token); //*Exception here* 
       return true; 
      } 
      catch (RPXLib.Exceptions.RPXAuthenticationErrorException ex) 
      { 
      } return false; 
     } 

Ich erhalte Ausnahme bei bezeichnet Codezeile. Ich bekomme Token-Wert richtig. aber konnte keinen Kopf weitermachen. Ausnahme ist:

The remote server returned an error: (500) Internal Server Error. 

Stack Trace: 

[WebException: The remote server returned an error: (500) Internal Server Error.] 
    System.Net.HttpWebRequest.GetResponse() +5313085 
    RPXLib.RPXApiWrapper.Call(String methodName, IDictionary`2 queryData) in D:\Development\Projects (3rd Party)\RpxLib\src\RPXLib\RPXApiWrapper.cs:50 
    RPXLib.RPXService.GetUserData(String authenticationDetailsIdentifier) in D:\Development\Projects (3rd Party)\RpxLib\src\RPXLib\RPXService.cs:156 
    SingleSignOn.Controllers.HomeController.signin(String token) in D:\ParallelMinds\Study Material\MVC\SingleSignOn\SingleSignOn\Controllers\HomeController.cs:37 
    lambda_method(ExecutionScope , ControllerBase , Object[]) +140 
    System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +17 
    System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +178 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +24 
    System.Web.Mvc.<>c__DisplayClassd.<InvokeActionMethodWithFilters>b__a() +52 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation) +254 
    System.Web.Mvc.<>c__DisplayClassf.<InvokeActionMethodWithFilters>b__c() +19 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +192 
    System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +314 
    System.Web.Mvc.Controller.ExecuteCore() +105 
    System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +39 
    System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext) +7 
    System.Web.Mvc.<>c__DisplayClass8.<BeginProcessRequest>b__4() +34 
    System.Web.Mvc.Async.<>c__DisplayClass1.<MakeVoidDelegate>b__0() +21 
    System.Web.Mvc.Async.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult _) +12 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +59 
    System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +44 
    System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +7 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +8674318 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155 


Version Information: Microsoft .NET Framework Version:2.0.50727.3053; ASP.NET Version:2.0.50727.3053 

und fragt nach RPXLibWraper.cs aus Pfad zu öffnen.

D:\Development\Projects (3rd Party)\RpxLib\src\RPXLib\RPXApiWrapper.cs 

was muss ich tun?

+0

alle Updates hier bitte ..... ich bin neu in diesem Konzept. –

+0

alle Bode lebendig dort ???????????????????????? Schande dafür. –

Antwort

0

Ich hatte genau das gleiche Problem jetzt und löste es. Ich benutze ihre Helfer C# -Klasse und der Pfad/api/v2/ist dort fest codiert. Sie können diesen Pfad also auch nicht in der Zeichenfolge https://rpxnow.come/api/v2/ haben, die ein InParam für den neuen Rpx() - Aufruf ist. Senden Sie einfach die URL ohne/api/v2/an den neuen Rpx() - Aufruf. Ich habe es für mich gelöst.

Viel Glück!