2011-01-03 11 views
0

단일 로그인으로 사이트 로그인 기능을 구축하려고합니다. 몇 가지 내가 어떻게 API를 그렇게 찾은 사이트 잰 레인에 건너 왔어. 또한 내 asp.net MVC 응용 프로그램에서 이것을 시도하고있다. 그래서 나는 주어진 단계를 따라 갔다. here 나는 정확히 주어진 단계를 따라 갔다. 그래서 나는 여기에 코드를 줄 필요가 없다고 생각한다. 하지만 내 행동에 :RPXLib.dll 예외가 발생했습니다 원격 서버에서 오류를 반환했습니다 : (500) 내부 서버 오류

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; 
     } 

나는 표시된 코드 줄에서 예외가 발생합니다. 나는 토큰 값을 적절하게 얻고있다. 그러나 머리를 앞으로 나아갈 수 없었다. 예외는 다음과 같습니다.

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 

경로에서 RPXLibWraper.cs를 열 것을 요청합니다.

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

나는 무엇을해야합니까?

+0

모든 업데이트는 여기에 제발 ..... 나는이 개념에 새로운입니다. –

+0

거기에 어떤 징조가 살아 있니? ????????????????????? ...... ...... 수치 스럽네요. –

답변

0

저는 지금 똑같은 문제가 있었고 해결했습니다. 나는 그들의 도우미 C# 클래스를 사용하고 있으며/api/v2/경로는 하드 코딩되어 있습니다. 따라서 위의 경로는 https://rpxnow.come/api/v2/ 문자열이며 새로운 Rpx() 호출의 inparam입니다. 그래서/api/v2 /를 사용하지 않고 url을 새로운 Rpx() 호출로 보냅니다. 그것을 해결했습니다.

행운을 빈다.