WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   har problem med payson integration (https://www.wn.se/forum/showthread.php?t=1046028)

nabil_akhlaque 2011-01-21 00:33

har problem med payson integration
 
Hejsan,
Någon som kan hjälpa mig?
Försöker integrera min sida mot payson betallösning...

felmeddelande:
MD5- Obligatorisk - Fel MD5, Använd parametrarna #SellerEmail# - #Cost# - #ExtraCost# - #OkUrl# - #GuaranteeOffered# samt din nyckel för att beräkna MD5

Kod:

Md5Helper md5h = new Md5Helper();

        int iAgentID = 5455;
        string sKey = "e5b65416-0369-4411-bb17-487d8b3d9582";

            string sDescription = "Description of item or service";
        string sSellerEmail = "[email protected]";
            string sBuyerEmail = "[email protected]";
            Decimal dCost = 4;                                                          //Cost of item or service
        Decimal dExtraCost = 0;                                                      //Shipping
            string sOkUrl = "http://www.yoursite.com/verify.asp";
            string sCancelUrl = "http://www.yoursite.com/error.asp";
            string sRefNr = "123";                                                        //Merchant reference number
            int iGuaranteeOffered = 1;                                      //Payson Guarantee

            string sMD5string  =  sSellerEmail + ":" + dCost + ":" + dExtraCost + ":" + sOkUrl + ":" + iGuaranteeOffered + sKey;
        string sMD5Hash = md5h.CalculateMD5Hash(sMD5string, sKey);

        SellerEmail.Value = sSellerEmail;
        BuyerEmail.Value = sBuyerEmail;
        AgentID.Value = iAgentID.ToString();
        Description.Value = sDescription;
        Cost.Value = dCost.ToString();
        ExtraCost.Value = dExtraCost.ToString();
        OkUrl.Value = sOkUrl;
        CancelUrl.Value = sCancelUrl;
        RefNr.Value = sRefNr;
        MD5.Value = sMD5Hash;
        GuaranteeOffered.Value = iGuaranteeOffered.ToString();


digiArt 2011-01-21 07:14

Payson kör PHP, du kör .NET

Det handlar om hur MD5 räknas fram, skiljer sig mellan dessa två språk:

http://www.codeproject.com/KB/securi...nctionPHP.aspx

Holmgren 2011-01-21 11:58

Payson har moduler för både asp asp.net och php

Du måste inkludera md5 sidan till sidan där du anropar funktionen.
Kolla dina variabler. Du har olika namn på dessa.

nabil_akhlaque 2011-01-21 12:11

Citat:

Ursprungligen postat av Holmgren (Inlägg 20389060)
Payson har moduler för både asp asp.net och php

Du måste inkludera md5 sidan till sidan där du anropar funktionen.
Kolla dina variabler. Du har olika namn på dessa.


detta har jag redan gjort... alla värden är också rätt...
problemet är bara att MD5 hashade nyckel inte överensstämmer.

Holmgren 2011-01-21 12:27

Har du gjort agentansökan och fått denna godkänd?
Verifierat nyklen? Gemener/versaler inga extra mallanrum etc

#SellerEmail# - #Cost# - #ExtraCost# - #OkUrl# - #GuaranteeOffered#
Har alla fått ett värde?

nabil_akhlaque 2011-01-21 12:46

Citat:

Ursprungligen postat av Holmgren (Inlägg 20389068)
Har du gjort agentansökan och fått denna godkänd?
Verifierat nyklen? Gemener/versaler inga extra mallanrum etc

#SellerEmail# - #Cost# - #ExtraCost# - #OkUrl# - #GuaranteeOffered#
Har alla fått ett värde?

okej, jag lyckade hitta felet...
det är tydligen fel i dokumentationen för integrationen för asp.net...
det står det att man ska använda sig utav:

string sMD5string = sSellerEmail + ":" + dCost + ":" + dExtraCost + ":" + sOkUrl + ":" + iGuaranteeOffered + sKey;
string sMD5Hash = md5h.CalculateMD5Hash(sMD5string, sKey);

som ni ser skickas det in 'Key' två gånger.

så ska det se ut:
string sMD5string = sSellerEmail + ":" + dCost + ":" + dExtraCost + ":" + sOkUrl + ":" + iGuaranteeOffered;
string sMD5Hash = md5h.CalculateMD5Hash(sMD5string, sKey);


Alla tider är GMT +2. Klockan är nu 02:39.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson