faustf Posted May 10, 2016 Share Posted May 10, 2016 hi guy how is possible to send a script XML script ? <?xml version="1.0" encoding="utf-8"?> <GetSessionIDRequest xmlns="urn:ebay:apis:eBLBaseComponents"> <RuName>MyRunamehere</RuName> </GetSessionIDRequest> ; The data to be sent ;$sPD = '<?xml version="1.0" encoding="utf-8"?><GetSessionIDRequest xmlns="urn:ebay:apis:eBLBaseComponents"><RuName>MyRuNameHere</RuName></GetSessionIDRequest>' $sPD='<?xml version="1.0" encoding="utf-8"?>' & _ '<GetSessionIDRequest xmlns="urn:ebay:apis:eBLBaseComponents"> '& _ ' <RuName>MyRuNameHere</RuName>' & _ '</GetSessionIDRequest>' ; Creating the object $oHTTP = ObjCreate("winhttp.winhttprequest.5.1") $oHTTP.Open("POST", "http://open.api.sandbox.ebay.com/shopping?", False) $oHTTP.SetRequestHeader("X-EBAY-API-APP-ID", "developf-develop-SBX-02f8a652f-80372f63") $oHTTP.SetRequestHeader("X-EBAY-API-VERSION", "963") $oHTTP.SetRequestHeader("X-EBAY-API-SITE-ID", "0") $oHTTP.SetRequestHeader("X-EBAY-API-CALL-NAME", "GeteBayTime") $oHTTP.SetRequestHeader("X-EBAY-API-REQUEST-ENCODING", "XML") ; Performing the Request $oHTTP.Send($sPD) ; Download the body response if any, and get the server status response code. $oReceived = $oHTTP.ResponseText $oStatusCode = $oHTTP.Status If $oStatusCode <> 200 then MsgBox(4096, "Response code", $oStatusCode) EndIf ConsoleWrite($oReceived) #cs ; Saves the body response regardless of the Response code $file = FileOpen("Received.html", 2) ; The value of 2 overwrites the file if it already exists FileWrite($file, $oReceived) FileClose($file) #ce i have this error --> Press Ctrl+Alt+Break to Restart or Ctrl+Break to Stop <?xml version="1.0" encoding="UTF-8"?> <GeteBayTimeResponse xmlns=""> <ns1:Ack xmlns:ns1="urn:ebay:apis:eBLBaseComponents">Failure</ns1:Ack> <ns2:Errors xmlns:ns2="urn:ebay:apis:eBLBaseComponents"> <ns2:ShortMessage>Input data is invalid.</ns2:ShortMessage> <ns2:LongMessage>Input data for the given tag is invalid or missing. Please check API documentation.</ns2:LongMessage> <ns2:ErrorCode>1.22</ns2:ErrorCode> <ns2:SeverityCode>Error</ns2:SeverityCode> <ns2:ErrorParameters ParamID="0"> <ns2:Value></ns2:Value> </ns2:ErrorParameters> <ns2:ErrorClassification>RequestError</ns2:ErrorClassification> </ns2:Errors> <ns3:Build xmlns:ns3="urn:ebay:apis:eBLBaseComponents">E963_CORE_APILW_17934819_R1</ns3:Build> <ns4:Version xmlns:ns4="urn:ebay:apis:eBLBaseComponents">963</ns4:Version> </GeteBayTimeResponse> +>22:11:16 AutoIt3.exe ended.rc:0 +>22:11:16 AutoIt3Wrapper Finished. >Exit code: 0 Time: 1.196 Link to comment Share on other sites More sharing options...
Trong Posted May 10, 2016 Share Posted May 10, 2016 I don't know, but try debug: expandcollapse popup; The data to be sent ;~ $sPD = '<?xml version="1.0" encoding="utf-8"?><GetSessionIDRequest xmlns="urn:ebay:apis:eBLBaseComponents"><RuName>MyRuNameHere</RuName></GetSessionIDRequest>' $sPD = '<?xml version="1.0" encoding="utf-8"?>' & _ '<GetSessionIDRequest xmlns="urn:ebay:apis:eBLBaseComponents"> ' & _ ' <RuName>MyRuNameHere</RuName>' & _ '</GetSessionIDRequest>' ; Creating the object $oHTTP = ObjCreate("winhttp.winhttprequest.5.1") $oHTTP.Open("POST", "http://open.api.sandbox.ebay.com/shopping?", False) $oHTTP.SetRequestHeader("X-EBAY-API-APP-ID", "developf-develop-SBX-02f8a652f-80372f63") $oHTTP.SetRequestHeader("X-EBAY-API-VERSION", "963") $oHTTP.SetRequestHeader("X-EBAY-API-SITE-ID", "0") $oHTTP.SetRequestHeader("X-EBAY-API-CALL-NAME", "GeteBayTime") $oHTTP.SetRequestHeader("X-EBAY-API-REQUEST-ENCODING", "XML") ; Performing the Request $oHTTP.Send($sPD) ; Download the body response if any, and get the server status response code. $oReceived = $oHTTP.ResponseText $oStatusCode = $oHTTP.Status If $oStatusCode <> 200 Then MsgBox(4096, "Response code", $oStatusCode) EndIf ConsoleWrite($oReceived & @CRLF) ConsoleWrite("!------------------------------------------------" & @CRLF) $oReceived = $oHTTP.GetAllResponseHeaders() ConsoleWrite($oReceived & @CRLF) #cs ; Saves the body response regardless of the Response code $file = FileOpen("Received.html", 2) ; The value of 2 overwrites the file if it already exists FileWrite($file, $oReceived) FileClose($file) #ce Regards, Link to comment Share on other sites More sharing options...
faustf Posted May 10, 2016 Author Share Posted May 10, 2016 mmm i tryed but not understund so much <GeteBayTimeResponse xmlns=""> <ns1:Ack xmlns:ns1="urn:ebay:apis:eBLBaseComponents">Failure</ns1:Ack> <ns2:Errors xmlns:ns2="urn:ebay:apis:eBLBaseComponents"> <ns2:ShortMessage>Input data is invalid.</ns2:ShortMessage> <ns2:LongMessage>Input data for the given tag is invalid or missing. Please check API documentation.</ns2:LongMessage> <ns2:ErrorCode>1.22</ns2:ErrorCode> <ns2:SeverityCode>Error</ns2:SeverityCode> <ns2:ErrorParameters ParamID="0"> <ns2:Value></ns2:Value> </ns2:ErrorParameters> <ns2:ErrorClassification>RequestError</ns2:ErrorClassification> </ns2:Errors> <ns3:Build xmlns:ns3="urn:ebay:apis:eBLBaseComponents">E963_CORE_APILW_17934819_R1</ns3:Build> <ns4:Version xmlns:ns4="urn:ebay:apis:eBLBaseComponents">963</ns4:Version> </GeteBayTimeResponse> !---------------------------------------- Cache-Control: no-cache Connection: Keep-Alive Date: Tue, 10 May 2016 20:44:42 GMT Pragma: no-cache Transfer-Encoding: chunked Content-Type: text/xml;charset=utf-8 Expires: Sat, 25 Dec 1999 00:00:00 GMT Last-Modified: Tue, 10 May 2016 20:44:42 GMT Server: Apache-Coyote/1.1 X-EBAY-API-BUILD-TAG: E963_CORE_APILW_17934819_R1 X-EBAY-API-POOL-NAME: ___cDRidW9rdHZnaWdnaX9ganRi X-EBAY-API-SERVER-NAME: ___dm8ucnA3Myg0YWBhZDIyKjc3LTI3KTE8KDIwPz43OzU= X-EBAY-ESB-GUID: urn:uuid:1B977D579C3C1225B326991775554435590-491244872 Link to comment Share on other sites More sharing options...
mLipok Posted May 10, 2016 Share Posted May 10, 2016 (edited) I see you are creating one big project. It is interesting to watching all your questions as this showing how AutoIt can be used to combine several technologies to develop CRM/ERP like program with many awesome feature. This reminds me of one of my projects. btw. This: ; Download the body response if any, and get the server status response code. $oReceived = $oHTTP.ResponseText $oStatusCode = $oHTTP.Status Should look like this: ; Get the body response if any, and get the server status response code. $sReceived = $oHTTP.ResponseText $sStatusCode = $oHTTP.Status As you are not downloading it (this is already in this object just after ; Performing the Request $oHTTP.Send($sPD) because when you are using Send then server sending to you response automaticaly and you do not must download it separatly. So this object method Send is waiting for response and automatiacly sets ResponseText. So you are ust getting object property. ..... and this is property which get to you results as string not object, so you should use correct variable naming $sReceived instead $oReceived - just for clarity of code. Edited May 10, 2016 by mLipok Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24 Link to comment Share on other sites More sharing options...
mLipok Posted May 10, 2016 Share Posted May 10, 2016 Try to look here: VIES over SOAP This is my solution to similar case. Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24 Link to comment Share on other sites More sharing options...
faustf Posted May 10, 2016 Author Share Posted May 10, 2016 hi @mLipok how are you ? i hope very well yea so big project i hope finish one day, the code posted is only for test if i understund how work ebay api . i rewrite Link to comment Share on other sites More sharing options...
mLipok Posted May 10, 2016 Share Posted May 10, 2016 Thanks, good. I see you are also full of idea and things to do, in the process of making, interesting things. This is a great time when you see from day to day, you progress with the work forward, and the whole thing takes on a real shape. Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24 Link to comment Share on other sites More sharing options...
mLipok Posted May 10, 2016 Share Posted May 10, 2016 Btw. here on the forum already is Did you look at this ? Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24 Link to comment Share on other sites More sharing options...
faustf Posted May 10, 2016 Author Share Posted May 10, 2016 yea seangriffin inspire me i just create a half udf for get info , but now is very hard for me , i want coding all api for ebay and share at comunity my udf but the target is so far Link to comment Share on other sites More sharing options...
Trong Posted May 10, 2016 Share Posted May 10, 2016 For GET: XML, SOAP, JSON For POST: JSON No XML for POST: http://developer.ebay.com/devzone/shopping/docs/Concepts/ShoppingAPI_FormatOverview.html Why do not you use GET? http://open.api.sandbox.ebay.com/shopping?callname=FindPopularItems&responseencoding=XML&appid=TrongDao-AutoITeB-SBX-04d8cb02c-34ba5b85&siteid=0&QueryKeywords=dog&version=713 Regards, Link to comment Share on other sites More sharing options...
faustf Posted May 10, 2016 Author Share Posted May 10, 2016 becouse i must take a session id with , http://developer.ebay.com/Devzone/XML/docs/reference/ebay/GetSessionID.html#Samples and you can do , only with post (i belive ) i just used api test tool https://developer.ebay.com/DevZone/build-test/test-tool/default.aspx and work fine but when i try in autoit not run Link to comment Share on other sites More sharing options...
faustf Posted May 10, 2016 Author Share Posted May 10, 2016 i did do some modify expandcollapse popup; The data to be sent $sPD = _ '<?xml version="1.0" encoding="utf-8"?>' & _ '<GetSessionIDRequest xmlns="urn:ebay:apis:eBLBaseComponents">' & _ '<RuName>develop_faustf-developf-develo-ygpoetp</RuName>' & _ '</GetSessionIDRequest>' & _ '' ; Creating the object $oHTTP = ObjCreate("winhttp.winhttprequest.5.1") $oHTTP.Open("POST", "http://open.api.sandbox.ebay.com/shopping?", False) $oHTTP.SetRequestHeader("X-EBAY-API-DEV-ID", "49cd0e8e-cbce-4830-acc1-0e3a250a33ae") $oHTTP.SetRequestHeader("X-EBAY-API-APP-ID", "developf-develop-SBX-02f8a652f-80372f63") $oHTTP.SetRequestHeader("X-EBAY-API-CERT-ID", "SBX-2f8a6526f23ec-65bd-42d7-b081-5a25") $oHTTP.SetRequestHeader("X-EBAY-API-VERSION", "963") $oHTTP.SetRequestHeader("X-EBAY-API-SITE-ID", "0") $oHTTP.SetRequestHeader("X-EBAY-API-CALL-NAME", "GetSessionID") $oHTTP.SetRequestHeader("X-EBAY-API-REQUEST-ENCODING", "XML") ;MsgBox (0,'',$sPD) ; Performing the Request $oHTTP.Send($sPD) ; Download the body response if any, and get the server status response code. $oReceived = $oHTTP.ResponseText $oStatusCode = $oHTTP.Status If $oStatusCode <> 200 Then MsgBox(4096, "Response code","Response Code: "& $oStatusCode) EndIf ConsoleWrite($oReceived & @CRLF) ConsoleWrite("!----------------------------------------" & @CRLF) $oReceived = $oHTTP.GetALLResponseHeaders() ConsoleWrite($oReceived & @CRLF) #cs ; Saves the body response regardless of the Response code $file = FileOpen("Received.html", 2) ; The value of 2 overwrites the file if it already exists FileWrite($file, $oReceived) FileClose($file) #ce now answer me with 500 error <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><GetSessionIDResponse xmlns="urn:ebay:apis:eBLBaseComponents"><Timestamp>Tue May 10 2016 16:08:01 GMT-0700 (GMT-07:00)</Timestamp><Ack>Failure</Ack><Errors><ShortMessage>Service unavailable.</ShortMessage><LongMessage>Service unavailable.</LongMessage><ErrorCode>99.99</ErrorCode><SeverityCode>Error</SeverityCode><ErrorClassification>RequestError</ErrorClassification></Errors><CallName>GetSessionID</CallName><ResponseCode>null</ResponseCode><ContentType>null</ContentType><Build>UNSET</Build><Version>653</Version></GetSessionIDResponse></soapenv:Body></soapenv:Envelope> Link to comment Share on other sites More sharing options...
Trong Posted May 11, 2016 Share Posted May 11, 2016 It worked fine with my ID! Good luck: expandcollapse popupLocal $RuName = "Your-RuName" Local $DevID = "Your-DEV-ID" Local $AppID = "Your-AP-IP" Local $CerID = "Your-CER-ID" ;~ HttpSetUserAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36") Local $sData = '<?xml version="1.0" encoding="UTF-8" ?>' $sData &= '<GetSessionIDRequest xmlns="urn:ebay:apis:eBLBaseComponents">' $sData &= ' <RuName>' & $RuName & '</RuName>' $sData &= '</GetSessionIDRequest>' ; Creating the object Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1") ;Microsoft.XMLHTTP $oHTTP.Open("POST", "https://api.sandbox.ebay.com/ws/api.dll", False) ;~ $oHTTP.Open("POST", "http://open.api.sandbox.ebay.com/shopping?", False) $oHTTP.SetRequestHeader("Content-Type", "text/xml; charset=UTF-8") $oHTTP.SetRequestHeader("X-EBAY-API-COMPATIBILITY-LEVEL", "931") $oHTTP.SetRequestHeader("X-EBAY-API-VERSION", "963") $oHTTP.SetRequestHeader("X-EBAY-API-DEV-NAME", $DevID) $oHTTP.SetRequestHeader("X-EBAY-API-APP-NAME", $AppID) ;~ $oHTTP.SetRequestHeader("X-EBAY-API-APP-ID", $AppID) $oHTTP.SetRequestHeader("X-EBAY-API-CERT-NAME", $CerID) ;~ $oHTTP.SetRequestHeader("X-EBAY-API-SITE-ID", "0") $oHTTP.SetRequestHeader("X-EBAY-API-SITEID", "0") $oHTTP.SetRequestHeader("X-EBAY-API-CALL-NAME", "GetSessionID") $oHTTP.SetRequestHeader("X-EBAY-API-REQUEST-ENCODING", "XML") ; Performing the Request $oHTTP.Send($sData) ; Download the body response if any, and get the server status response code. Local $oReceived = $oHTTP.ResponseText Local $oStatusCode = $oHTTP.Status If $oStatusCode <> 200 Then ConsoleWrite("!Response Code: " & $oStatusCode & @CRLF) ConsoleWrite($oReceived & @CRLF) Regards, Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now