Ik ben benieuwd of er iemand is met persoonlijke ervaring in het maken van POST calls naar de Flickr API. Op zich krijg ik elke call wel aan de praat (GET of POST), alleen zit ik met een heel specifiek probleem, waar ook de Flickr API handleiding geen antwoord op heeft.
Het probleem doet zich voor als ik een POST call maak waarin in een waarde zit die normaal gesproken urlencoded moet worden. Bijvoorbeeld als ik een nieuw comment bij een foto wil geven met als waarde 'Test comment'. Vanwege de spatie zou dit in een GET request moeten worden gecodeerd, maar in een POST request is dat onduidelijk. Het lijkt erop dat dit wel in de basestring voor de signature moet worden opgenomen en daarin moet wordt gecodeerd. Maar hoe ik het ook doe, de signature klopt telkens niet. Als ik dan de debug basestring bekijk die Flickr terugstuurt dan blijk dat daarin de waarde telkens een keer meer gecodeerd is dan wat ik zelf heb. Dus als het bij mij 'test%2520comment' wordt, dan staat er in de basestring van Flickr 'test%252520comment'.
Dus als er iemand ervaring heeft met dit specifieke punt dan hoor ik het erg graag. Moeten POST parameters bijvoorbeeld in de basestring opgenomen worden, moeten die waardes worden gecodeerd, hoe vaak, etc.
[size=xsmall]Toevoeging op 11/08/2014 10:07:36:[/size]
Nog even een test gedaan met GET requests vs POST requests. Als ik in een GET request de datum 'August 1, 2014' meegeef dan kan ik mijn eigen debug log zien dat er in de basestring het volgende staat:
August%201%2C%202014
Die call werd geaccepteerd en uitgevoerd door Flickr, dus die basestring klopte.
Als ik nu dezelfde waarde in een POST call meegeef (met alle parameters gecodeerd), dan staat er in mijn basestring dezelfde waarde, in de debug basestring die ik terug krijg van Flickr staat er echter een andere.
mijn basestring: August%201%2C%202014
Flickr debug basestring: August%2525201%25252C%2525202014
Waarom klopt het dus wel in een GET request en niet in een POST request? Iemand enig idee?
652 views