-
URL Woocommerce webshop
Hallo,
Google geeft me niet een duidelijke uitleg over het volgende:
ik wil met behulp van de CDATA FireDac Woocommerce component en Delphi 10.4.2 een verbinding maken
met webshops. Waar ik op vastloop is de basis URL:
ik heb een eigen webshop op mijn ontwikkel pc gemaakt, die kan ik benaderen met
http://localhost/wptest en ook met http://localhost/wptest/wc-api
ik heb ook een testomgeving van één van de klanten, die kan ik benaderen met
https://www.naamvandesite.nl/wc-api
maar van een andere klanttestomgeving krijg ik het niet voor elkaar, continue een 404.
Nu heb ik de dashboards (daar kan ik dus wel bij) vergeleken en die zijn, voor zover ik kan beoordelen allemaal het zelfde.
De klantkey en -secret zijn ook in orde (anders krijg ik een melding als "klantsleutel ongeldig")
Vraag dus: hoe moet die URL precies zijn opgebouwd, en heb ik mogelijk iets anders over het hoofd gezien,
bijvoorbeeld een instelling op de pc waar de webshop draait ?
-
Staan sommige klanten (die niet werken) op een virtuele host toevallig?
(Sorry, dat is het eerste dat bij me opkomt)
Ander idee: je geeft geen document op, alleen een pad.
De meeste servers hebben daar een instelling voor en verwijzen dan door naar index.htm, index.html, index.php of iets dergelijks, maar als er niets staat ingesteld (of het script heet heel anders dan ingesteld), dan krijg je natuurlijk een 404 ("Document not found") terug.
Probeer anders eens te achterhalen hoe het script heet en roep dit in zijn geheel aan, zoals (bijvoorbeeld): https://www.naamvandesite.nl/wc-api/api.php oid
-
ik geef inderdaad alleen een pad op. het component kan je daarna gebruiken door een query naar de server te sturen ( bv. SELECT * FROM TAXRATES )
-
Ja, dat begreep ik, maar staat de default-handler op de server correct ingesteld of is het een module/service die niet via een bepaald document wordt aangeroepen?
Als je op je eigen testomgeving kijkt: wat staat er allemaal in het doelpad (*.cgi, *php, *.js, ...) of is het doelpad echt virtueel?
-
Misschien een slash aan het einde? https://www.naamvandesite.nl/wc-api/
Het zou misschien ook kunnen komen door een of andere url rewrite mechanisme.
-
ik ga het even navragen bij de beheerder van de shop.
De slash is het niet, had ik al geprobeerd.
-
-
Let op dat je de legacy API (waar je gebruik van maakt) specifiek aan moet zetten in WooCommerce, dat moet je misschien nog even controleren in de WooCommerce instellingen Advanced / Legacy API.
En als je iets nieuws aan het bouwen bent: gebruik niet de legacy API, die gaat een keer uit gefaseerd worden, maar de huidige API.
-
ik heb 2 dashboards met elkaar vergeleken en een paar aanpassingen gedaan in het dashboard van de site die niet wil.
ik krijg dan bij aanmelden : Invalid JSON markup. Expected json, but could not parse the response.
Heb hier al op gezocht via Google, maar ik ben er nog niet uit.
-
Wie zegt dat, en als reactie waarop? Zo'n melding kan overal zitten, maar het wijst erop dat iets niet geldig is. Als je kan vinden wat en waarom, ben je waarschijnlijk een stuk verder. Soms wordt er weleens een plain text foutmelding teruggegeven die door de andere partij als Json wordt behandeld. Die oorspronkelijke melding is dan veel interessanter.
-
dank voor je antwoord.
even geduld nu, kost even tijd om het verder uit te zoeken.
mocht ik het vinden, dan meld ik dat .
-
Ik zou eerst eens met een tool als Fidler of Postman of desnoods de restdebugger van Delphi zelf de api uit gaan zoeken.
Nu tast je volledig in het duister met die extra afhankelijkheid van CDATA.
-
Ik gebruik zelf ook CDATA Firedac voor verbinding met Exact Online en Magento, en dat ging ook niet zonder slag of stoot. Maar uiteindelijk met ondersteuning van de support afdeling alles werkende gekregen.
Als je dubbelklikt op TFDConnection kun je de instellingen aanpassen, als je dan bij Logfile een pad instelt (bijvoorbeeld: C:\Users\Public\CDataLog.txt), en Verbosity op 3 zet krijg je een gedetailleerde logfile welke je alles verteld over de communicatie.
Daarnaast heb ik goede ervaringen met een vraag aan de support afdeling van CDATA per E-mail, het duurt soms even maar heb uiteindelijk altijd goede antwoorden en oplossingen gekregen op mijn problemen. Ook buiten het actieve contract om.
-
dank je rsjmeijer, ik ga er mee aan de slag !