eBay獲取oken授權


1、注冊開發者賬號(https://go.developer.ebay.com/) 

  hufangyong   hu6253859.

2、注冊沙箱測試賬號(http://sandbox.ebay.com)

      testuser_hufangyong  hu6253859.

3、注冊好開發者賬號后登陸(如下圖),這里需要記錄AppID,DevID,CertID。后面API接口請求Token時需要用到,然后點擊 User Tokens

 

4、我們這里選擇了Sandbox沙箱環境,所以我們登陸沙箱賬號,將沙箱測試賬號綁定到開發者賬號,然后生成一個授權token

 

 

5、登陸了沙箱測試賬號后,手動生成的token就已經有了,測試時可以直接copy這個token用

 

6、打開下面的Get a token from eBay via  Your Application 列表,記錄runame,動態獲取SessionId時要用到

 

 

7、通過上面的手動獲取token的過程,我們已經記錄了開發者賬號的AppID,DevID,CertID,RuName這四個參數。這是在下面通過API接口動態獲取Token的必要參數。

根據AppID,DevID, CertID,RuName獲取SessionId,然后再拼接成用戶登陸驗證授權的URL。

  public string GetSessionId()

        {

            ApiContext localContext = new ApiContext();

            ApiAccount apiAccount = new ApiAccount();

            apiAccount.Application = AppID;

            apiAccount.Developer = DevID;

            apiAccount.Certificate = CertID;

 

            localContext.ApiCredential.ApiAccount = apiAccount;

            localContext.SoapApiServerUrl="https://api.sandbox.ebay.com/wsapi";

            localContext.Version = "981";

            localContext.Timeout = 50000;

            localContext.Site = SiteCodeType.US;

            localContext.ErrorLanguage = ErrorLanguageCodeType.zh_CN;

 

            GetSessionIDCall apiCall = new GetSessionIDCall(localContext);

            apiCall.RuName = RuName;

            string sessionId = apiCall.GetSessionID();      

    return sessionId; //https://signin.sandbox.ebay.com/ws/eBayISAPI.dll?SignIn&runame="+runame+"&SessID=" + sessionId

        }

 

8、拼接好URL后,需要用戶登陸驗證授權(激活這個SessionId),可以粘貼上述地址到瀏覽器上,也可以在程序中打開,然后用戶點擊Agree同意授權  

 

9、在用戶登陸驗證激活SessionId后,就可以通過SessionId來獲取Token了

  public  void GetUserTokenBySessionId ( string sessionId)

        {

 

            ApiContext localContext = new ApiContext();

            ApiAccount apiAccount = new ApiAccount();

            apiAccount.Application = application;

            apiAccount.Developer = developer;

            apiAccount.Certificate = certificate;

           

            localContext.ApiCredential.ApiAccount=apiAccount;

            localContext.RuName = runame;

            localContext.SoapApiServerUrl="https://api.sandbox.ebay.com/wsapi";

            localContext.Version = "981";

            localContext.Timeout = 50000;

            localContext.Site = SiteCodeType.US;

            localContext.ErrorLanguage = ErrorLanguageCodeType.zh_CN;

 

            FetchTokenCall apiCall = new FetchTokenCall(localContext);

            apiCall.SessionID = sessionId;

            try

            {

                string token = apiCall.FetchToken(sessionId);

                _output.WriteLine("TOKEN:"+token);

            }

            catch (Exception e)

            {

                _output.WriteLine("TOKEN:" + e.Message);

            }

        }

 end

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM