Skip to content

How to read file binary and post to remote server and bonus with inputs and values.

Notifications You must be signed in to change notification settings

badursun/Classic-ASP-Post-binary-File-With-Input-Values

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Introduction

Read binary file and POST Remote SErver with input and values on Classic ASP

FPost Class is helper for read binary data and post to remote server with WebKitFormBoundary standarts. Just define the class and specify the physical files you want to add. Automatically checks for the presence of files. Makes the related MimeType definitions.

Usage

How To User Script

Just include file or class to your script

  <!--#include file="/yourPath/FPost.asp"-->

And set class

<%
	Dim FPost 
	Set FPost = New FilePost 
%>

And add some file and inputs

  <%
    ' Add Some File
    FPost.AddFile("test_files/1.png")
    FPost.AddFile("test_files/test.txt")
    FPost.AddFile("test_files/3.png")
    FPost.AddFile("test_files/3png.zip")

    ' Add Some Not Exist File
    FPost.AddFile("")
    FPost.AddFile("test_files/2.jpg")
    FPost.AddFile("test_files/sample.png")

    ' Add Some Data (inputName, inputValue)
    FPost.AddText "adi", "Anthony Burak"
    FPost.AddText "eposta", "[email protected]"
    FPost.AddText "soyadi", "DURSUN"
    
    ' Post File URL And Post Type
    FPost.PostURL("http://demoadresi.com/GET_FILE/")
    FPost.FormType("POST")

    ' Get Post HTTPStatus Answer (Default:200=Success)
    If FPost.PostFiles() = True Then 
      Response.Write "SUCCESS"&vbcrlf
      Response.Write "STATUS CODE: "&FPost.HTTPStatus()
      Response.Write "HTTP ANSWER: "&FPost.HTTPAnswer()
    Else
      Response.Write "SUCCESS"&vbcrlf
      Response.Write "STATUS CODE: "&FPost.HTTPStatus()
      Response.Write "HTTP ANSWER: "&FPost.HTTPAnswer()
    End If
    Set FPost = Nothing
  %>

Sample webKitformBoundary Structure

------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="name"

Anthony Burak
------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="email"

[email protected]
------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="surname"

DURSUN
------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="file0"; filename="1.png"
Content-Type: image/png

------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="file1"; filename="sample.png"
Content-Type: image/png

------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="file2"; filename="test.txt"
Content-Type: text/plain

------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="file3"; filename="3.png"
Content-Type: image/png

------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ
Content-Disposition: form-data; name="file4"; filename="3png.zip"
Content-Transfer-Encoding: base64
Content-Type: application/x-zip-compressed

------WebKitFormBoundarydKopUurI3iMLR4X6Gy2sZ--

Some Information

Read binary file and POST Remote SErver with input and values on Classic ASP

How to read file binary and post to remote server and bonus with inputs and values.

Is it possible?

Yes! Only use some MSMXL object, FileSystemObject, ADODB.Stream and Magic.

How To

1-) ADODB.Stream is a first object you can use to read/write text and binary files. The object is included in ADO 2.5 and later. 2-) ReadBinaryFile OR ReadTextFile AND SaveBinaryData OR SaveTextData on memory. 3-) Convert binary data to Text for submiting. 4-) Build WebKitFormBoundaryd (this is very important) 4-) Post data to Remote URL with Binary data in WebKitFormBoundary

What the WebKitFormBoundary

Each item in a multipart message is separated by a boundary marker. Webkit based browsers put "WebKitFormBoundary" in the name of that boundary.

What does the random string after a WebKitFormBoundary do\mean?

That's just the typical way of how a so called "boundary" between different parts of a mime structure is defined. The receiving side can tell the different parts apart by this. Same logic is used in different things, email messages too for example. Actually it is not the "random part" of that boundary that counts. The whole string is matched. It is simply a convention that each software uses a unique prefix string for such boundaries for transparency reasons. But in general the only requirement is that the chosen string must be unique throughout all contained data. Unique obviously except for the corresponding boundaries which must use exactly the same string.

About

How to read file binary and post to remote server and bonus with inputs and values.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published