Avatar billede carstenandersen Nybegynder
11. november 2009 - 09:41 Der er 8 kommentarer

PHP kode omskrevet til ASP

Hej eksperter

Følgende PHP kode:

$url = UrlSigner('http://uk.shopping.yahooapis.com', '/V2/search?query=ipod', '123', 'PartnerKey');
$xml = file_get_contents($url);
echo $xml;

skulle kunne give adgang til API hos Kelkoo (har styr på signering af url), se evt. http://developer.kelkoo.com/samples/sending-request-php/.

Hvordan kan det omskrives, så det kan bruges i ASP?

På forhånd tak.
Avatar billede The Real Yoda Juniormester
31. december 2009 - 13:47 #1
Du kan evt bruge ASP HTTP server-komponentet ..

http://www.serverobjects.com/products.htm
Avatar billede carstenandersen Nybegynder
04. januar 2010 - 10:59 #2
Hej therealyoda

Fedt at du kommer på banen, da problemet fortsat er uløst :-)

Jeg har afprøvet lidt af hvert, men kan desværre ikke helt se, hvordan jeg bruger ASP HTTP .... Koden, som signerer, afsluttes med en GetRequestUrl:

...
GetRequestUrl = UrlHost & UrlPath & "&hash=" & AuthenticationToken

END FUNCTION
%>

GetRequestUrl ser ca. sådan ud:

http://dk.shoppingapis.kelkoo.com/V2/search?query=ipod&aid=xxxxxxxx×tamp=xxxxxxxxxx&hash=iMOr_qeX9VyAKMfuSoqmoA--

Hvordan kan jeg komme videre med denne GetRequestUrl?

<%
Set HttpObj = Server.CreateObject("AspHTTP.Conn")
HTTPObj.Url = "" & GetRequestUrl & ""
strResult = HTTPObj.GetURL
%>??

Virkelig på forhånd tak!
Avatar billede The Real Yoda Juniormester
04. januar 2010 - 12:16 #3
Hmm ..
blot for at være sikker..
skal du andet end at hente en URL ?

skal du logge ind, eller poste noget til url.. eller er det blot en almindelig GET ?
Avatar billede carstenandersen Nybegynder
04. januar 2010 - 12:48 #4
Umiddelbart blot hente en URL. Først skal jeg signere URL, se http://developer.kelkoo.com/samples/signing-url-asp/, som afsluttes med værdien af GetRequestUrl. Jeg har fået signering til at virke.
Avatar billede The Real Yoda Juniormester
04. januar 2010 - 13:56 #5
Jamen såfremt signing virker..
så burde det bare være

Set HttpObj = Server.CreateObject("AspHTTP.Conn")
HTTPObj.Url = DenSignedeUrl
strResult = HTTPObj.GetURL
Avatar billede carstenandersen Nybegynder
04. januar 2010 - 14:43 #6
Har lige afprøvet, men fik blot fejlmeddelelsen:

Wrong number of arguments or invalid property assignment: 'GetRequestUrl'

Måske alligevel min signering ikke er ok!

Har på siden indsat:

1. Signeringskoden fra http://developer.kelkoo.com/samples/signing-url-asp/ (ændret Id og Key)
2. <% GetRequestUrl "http://dk.shoppingapis.kelkoo.com", "/V2/search?query=ipod", "xxxxxxxx", "xxxxxxxx" %> (xxxxxxxx = "rigtige" Id og Key)

Når jeg indlæser siden, får jeg:

TimeStamp: 1262615912
UrlHost: http://dk.shoppingapis.kelkoo.com
UrlPath: /V2/search?query=ipod&aid=xxxxxxxx×tamp=xxxxxxxx
AuthenticationId: xxxxxxxx
AuthenticationKey: xxxxxxxx
AuthenticationTokenRAW: /V2/search?query=ipod&aid=xxxxxxxx×tamp=xxxxxxxx
AuthenticationTokenMD5: 16fb92becdb4808dc485508f47f2fc40
AuthenticationTokenSTR: û'¾Í´€Ä…PGòü@
AuthenticationTokenB64: FvuSvs20gI3EhVCPR/L8QA==
AuthenticationToken: FvuSvs20gI3EhVCPR_L8QA--

Hvis jeg prøver at indsætte:

<% Response.Write Session("GetRequestUrl") %>

får jeg udskrevet:

http://dk.shoppingapis.kelkoo.com/V2/search?query=ipod&aid=xxxxxxxx×tamp=1262616000&hash=N09BTQfk6TLNcfray4Lmgg--

og hvis jeg kopierer og indlæser denne i samme browser, får jeg:

The signature or timestamp you provided is wrong

Kan du se noget logik i dette???
Avatar billede The Real Yoda Juniormester
05. januar 2010 - 12:06 #7
Hmm .. ikke andet end at det er en fejl i din signering..

for at du får dette svar, betyder jo at det bliver hentet fra kelkoo..
Avatar billede carstenandersen Nybegynder
05. januar 2010 - 13:10 #8
Jeg må vist tilbage og starte helt forfra ;-)

Hvis du mod betaling kan lave det for mig, må du meget gerne lige sige til, og ellers bare smid et svar og pointene er dine, velfortjente og tak for hjælpen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester