Avatar billede lumbye Nybegynder
18. september 2003 - 12:00

HTTP POST - mellemrum og linieskift forsvinder

Via et asp-script på egen server skal jeg løbende modtage xml kilde-data fra en ekstern server via http post. Det er angivet at alt indhold er URL encoded.

De xml-kilde-data som vi skal bruge ligger i et simpelt form element. Det afsendes således som en besked og IKKE som en fil.

Vi er nået dertil hvor vi kan modtage og få det modtagne gemt i lokale filer på vores egen server, MEN der er problemer med at data forvanskes og bliver ubrugeligt. Alle mellemrum og linieskift forsvinder undervejs fra afsendelsen til vi får gemt lokalt!

Jeg har en formodning om at det er et spørgsmål om encoding, men er ikke sikker. Under alle omstændigheder skal vi gerne kunne bevare alle mellemrum og linieskift.

Herunder et eksempel på de data der afsendes fra ekstern server:

<?xml version="1.0" encoding="UTF-8" ?>
<dbquery version="2.0">
<message id="6712">
Dagens program
<date>2003-04-22</date>
...
</message>
</dbquery>

Når vi har kørt den gennem vores script og får den gemt lokalt (inden den skal høvles ind i databasen) ser den således ud:

<?xmlversion="1.0"encoding="UTF-8"?><dbqueryversion="2.0"><messageid="6712">Dagensprogram<date>2003-04-22</date>...</message></dbquery>

Ganske ubrugeligt...

Er der nogen der har et bud på hvordan man i asp kan sørge for at få data fra http post'en behandlet korrekt så mellemrum og linieskift bevares?

Jeg har prøvet at lege med at tvinge header/content-type ned over behandlingen af data (application/x-www-form-urlencoded) men ved ikke hvordan dette skal sættes i koden så det virker. Den kode der laver filen ser ud som følger:

Folderpath=server.mappath("\") & "/schedules/xml" 
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile(Folderpath & "\temp.xml") 
  For Each x In Request.Form
        writedata = Request.Form(x)
      a.WriteLine(writedata)
  Next
a.Close 
Set a=nothing 
Set fs=nothing 

Håber der er kyndige http post-hoveder derude!
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