2010-02-16 42 views
0

我無法使RPX auth_info API調用正常工作。它不斷返回錯誤:「缺少參數:apiKey」我使用的Wiki上提供的C#RPX幫助程序類:RPX Helper ClassRPX API調用auth_info返回「missing parameter」錯誤

下面是我的Page_Load方法中的代碼。 RPX服務通過發送POST到我指定的Url來工作。我的代碼從下面顯示的發佈數據中獲取令牌。然後我調用AuthInfo API方法。

string token = Request.Params["token"]; 
string apiKey = "xxxxxxxxxxxxxxx"; //my API key 
Rpx rpx = new Rpx(apiKey, "http://rpxnow.com"); 
XmlElement xmlElement = rpx.AuthInfo(token); 

一切看起來不錯。令牌被填充。在他們的代碼中,「apiKey」值對被添加到寫入請求流的發佈數據中。有沒有人有這個運氣?任何想法爲什麼這不起作用?謝謝。

回答

0

爲其他人尋找答案。示例代碼是垃圾。

你需要設置基地址爲https://rpxnow.com - 提供的代碼是錯誤的。我可以發佈提供的URL,但它必須通過HTTP S而不是HTTP

0

RPX示例代碼不是很清楚。當ApiCall方法被調用時,我得到了一個404錯誤。

的Javascript:

janrain.settings.tokenUrl = 'http://mydomain/Test.ashx'; 

Test.ashx

public void ProcessRequest(HttpContext context) { 

     using (StreamWriter writer = new StreamWriter(context.Server.MapPath("/test.txt"))) { 
      var token = context.Request.Form["token"]; 
      writer.WriteLine("Token: " + token); 

      try { 
       var rpx = new Rpx("my_id", "https://rpxnow.com/"); 
       var authInfo = rpx.AuthInfo(token); 
       var doc = XDocument.Load(new XmlNodeReader(authInfo)); 
       writer.WriteLine(doc.Root.Descendants("displayName").First().Value); 
       writer.WriteLine(doc.Root.Descendants("identifier").First().Value); 
      } 
      catch (Exception ex) { 
       writer.WriteLine("Error: " + ex.Message); 
      } 

      foreach (string header in context.Request.Headers) 
       writer.WriteLine(header + " - " + context.Request.Headers[header]); 
     } 
    } 
相關問題