webForumDet fria alternativet
Logga in / Bli medlem

Ta emot POST

ASP

8 svar · 289 visningar · startad av pilos

Medlem sedan sep. 200123 inlägg
Trådstart#1

Har ett litet problem som jag hoppas att någon har en bra lösning på.

Ska skapa en ASP-sida som ska ta mot en POST från en extern applikation och spara datan som kommer in i en databas.
Min fråga är, hur kommer jag åt data in POSTen när den inte kommer från ett formulär?

Medlem sedan mars 20025 907 inlägg
#2

Fungerar det inte med request.form då? Så länge det är data som skickas med post så borde det väl inte spela någon roll hur datan skickas?

Medlem sedan sep. 200123 inlägg
#3

Hmm, ska testa det...

Medlem sedan sep. 200123 inlägg
#4

Nej fungerade inte, fick bara tomt.

Medlem sedan mars 20032 667 inlägg
#5

Hur skickas datan du ska komma åt?

Medlem sedan sep. 200123 inlägg
#6

Som jag skrev ovan, datan POSTas från en extern appilikation.

Medlem sedan sep. 200123 inlägg
#7

I PHP finns det en funktion som smidigt tar emot alla rådata i POSTen som ser ut så här: $GLOBALS['HTTP_RAW_POST_DATA']
Måste väl finnas något liknande i ASP?

Medlem sedan juni 20034 013 inlägg
#8

Nu använder jag visserligen bara php, men det låter ändå konstigt att asp inte skulle känna av ifall du postar data, så min gissning är att du inte gör det. Kolla upp vad det är programmet egentligen och gör och är du fortfarande osäker så kolla med en sniffer vad det är som skickas: http://www.ethereal.com/

Medlem sedan sep. 200123 inlägg
#9

Lösningen

Var nära lösningen från början, problemet var att Access inte kunde spara binärdata i ett PM-fält.

binaryData = Request.BinaryRead(Request.TotalBytes)

Function BinaryToString(Binary)
  Dim I, S
  For I = 1 To LenB(Binary)
    S = S & Chr(AscB(MidB(Binary, I, 1)))
  Next
  BinaryToString = S
End Function

stringData = BinaryToString(binaryData)
250 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)