2017-02-21 50 views
2

我是試圖使用Python ebaysdk,我不能夠理解爲什麼我不斷收到以下錯誤:ebaysdk:不能夠連接

{'Timestamp': '2017-02-21T19:55:31.915Z', 'Errors': {'LongMessage': 'Validation of the authentication token in API request failed.', 'ShortMessage': 'Auth token is invalid.', 'SeverityCode': 'Error', 'ErrorCode': '931', 'ErrorClassification': 'RequestError'}, 'Build': 'E989_CORE_API_18131074_R1', 'Version': '989', 'Ack': 'Failure'} 

的代碼片段是從複製github回購(https://github.com/timotheus/ebaysdk-python)。

from ebaysdk.trading import Connection as Trading 
from ebaysdk.exception import ConnectionError 

try:  
    api = Trading(domain='api.sandbox.ebay.com') 
    response = api.execute('GetOrders', {}) 
    print(response.dict()) 
    print(response.reply) 
except ConnectionError as e: 
    print(e) 
    print(e.response.dict()) 

我也把所有的配置放在ebay.yaml文件中。

要運行代碼片段,我要去developers.ebay.com,生成用戶授權令牌,將其粘貼到yaml文件中並運行腳本。

我的腳本的想法是在後臺運行。

有人有ebaysdk經驗告訴我如何正確連接到交易API?

回答

1

我發現這段代碼的問題:我沒有已經配置在YAML文件中的沙箱中的條目。在我做完這件事後,它已經開始了。我有一個新的錯誤(將在幾分鐘內發佈一個問題)。

這裏是ebay.yaml:

# Trading API Sandbox - https://www.x.com/developers/ebay/products/trading-api 
api.sandbox.ebay.com: 
    compatability: 967 
    appid: xxxxx 
    certid: yyyyy 
    devid: zzzzzzz 
    username: uuuuu 
    password: ppppp 

# Trading API - https://www.x.com/developers/ebay/products/trading-api 
api.ebay.com: 
    compatability: 967 
    appid: xxxxx 
    certid: yyyyy 
    devid: zzzzzzz 
1

我沒有在您的代碼片段或加載的模塊中看到對YAML配置的任何引用......繼https://github.com/timotheus/ebaysdk-python/wiki/Trading-API-Class的文檔後,您需要指定AppId或ID爲的配置文件保存:

api = Trading(appid="YOUR_APPID", devid="YOUR_DEVID", certid="YOUR_CERTID", token="YOUR_AUTH_TOKEN") 

api = Trading(config_file='myfile.yaml') 
+0

根據文件,如果沒有指定,它會尋找一個叫做eBay.yaml –

+0

很好的文件,這就是閱讀速度過快的情況下..如果您嘗試使用第一種方法進行測試,會發生什麼情況? –