ebay API 开发怎么获取授权GetSessionID

Refrain66 2017-03-10 06:11:46
小弟最近在做ebay店铺授权,碰到一个难题找遍了很多资料都没有解决问题,求大神指导一下

进入正题,请求Ebay的授权只需要跳转到下面这个URL进行登录就可以进行授权操作了
https://signin.sandbox.ebay.com/ws/eBayISAPI.dll?SignIn&runame=MyRuName&SessID=MyURLEncodedSessionID

runame这个参数小弟注册开发平台已经拿到了,可是这个SessID不知道从哪取到,看了开发者API文档找到下面这个链接是来获取的,可是怎么都看不懂

http://developer.ebay.com/Devzone/XML/docs/Reference/eBay/GetSessionID.html#Samples

求大神赐教!!!
...全文
556 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tanta 2017-04-25
  • 打赏
  • 举报
回复
下面主要介绍怎么在程序中,通过ebay api获得用户的token,这主要通过FetchTokenCall这个api获取。 这个api需要的额外参数有五个,appID,certID,devID,sessionID和serverURL,前三个需要注册开发者帐号获得,登录https://developer.ebay.com后,点击My Account可以看到,有sandbox和production两种,在测试阶段选择sandbox的id,应用发布版选择production类型。sesionID通过另外一个API GetSessionID获取,这个API也需要上述三个ID。获取token的流程就是,先获取用户登录的url,然后打开浏览器,让用户输入密码验证登录,然后在用户验证通过后,使用FetchTokenCall获取user token。说多了罗嗦,上代码: 1,获取验证的url: [java] view plain copy public static String getAuthenticateUrl() throws Exception { ApiContext localContext = new ApiContext(); ApiAccount apiAccount = new ApiAccount(); apiAccount.setApplication(appID); apiAccount.setCertificate(certID); apiAccount.setDeveloper(devID); localContext.getApiCredential().setApiAccount(apiAccount); localContext.setApiServerUrl("https://api.sandbox.ebay.com/wsapi"); GetSessionIDCall apiCall = new GetSessionIDCall(localContext); apiCall.setRuName(ruName); GetContext.sessionID = apiCall.getSessionID(); return "https://signin.sandbox.ebay.com/ws/eBayISAPI.dll?SignIn&" + "RuName=" + ruName + "&SessID=" + GetContext.sessionID; } 忘了说了,ruName在My Account>Application Settings>customize the ebay user consent form中获取。 2,打开浏览器,用户验证登录 可以粘贴上述地址到浏览器上,也可以在程序中打开系统的浏览器,减少用户的麻烦,在程序中打开系统浏览器,方法如下: [java] view plain copy public static boolean openBrowser(String url) { if (url == null) return false; String[] unixBrowser = new String[] { "google-chrome", "firefox" }; boolean success = false; if (System.getProperty("os.name").toLowerCase().startsWith("win")) { try { Runtime.getRuntime().exec( new String[] { "rundll32.exe", "url.dll,FileProtocolHandler", url }); success = true; } catch (Exception e) { } } else { for (int i = 0; i < unixBrowser.length; ++i) try { Runtime.getRuntime().exec(new String[] { unixBrowser[0], url }); success = true; break; } catch (Exception e) { } } return success; }
_jasonlee 2017-04-22
  • 打赏
  • 举报
回复
请问那个是店铺授权的api,我都没找到
  • 打赏
  • 举报
回复
求问 runame怎么获取
Refrain66 2017-03-10
  • 打赏
  • 举报
回复
求关注!!....

110,500

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧