Solved

HTTPS POST USING WEBCLIENT

Posted on 2007-04-01
4
10,903 Views
Last Modified: 2012-06-21
I am using the following code to HTTPS post an xml file to third party server. Now I believe I am able to send the file correctly but I need to pass a HTML input field value of type hidden as well with it. If I use a simple HTML interface as shown below I am successful:

<form enctype="multipart/form-data" action="https://myurl" method="POST">
  <input type="hidden" name="MyFieldName" value="myvalue">
  <input type="file" name="Myfile">
  <br/>
  <input type="submit">
</form>

I want to simulate the exact thing in my .NET code. I am confused how to pass value of the hidden field “MyFieldName” along with the file as I am using the WebClient.UploadFile() function. I tried passing it as query string but it does not work.

Can you please suggest something, I am now desperate.

Following is the code i am using at the moment in .NET:

Private Sub testHTTPPostXmlDoc()

        Try
           
            Dim web As New System.Net.WebClient()

            web.Headers.Add("Content-Type", "multipart/form-data")
           
            ' Simulating the line <input type="hidden" name="MyFieldName" value="myvalue">
web.QueryString.Add("MyFieldName", "myvalue")
           
Dim res As Byte() = web.UploadFile("https://myurl", "POST", "C:\MyFile.xml")
            Dim response As String = System.Text.Encoding.ASCII.GetString(res)

        Catch webEx As WebException

            MsgBox(webEx.Message, MsgBoxStyle.Information, "Debug Msg")
            MsgBox(webEx.StackTrace, MsgBoxStyle.Information, "Debug Msg")

        Catch ex As Exception

            MsgBox(ex.Message, MsgBoxStyle.Information, "Debug Msg")
            MsgBox(ex.StackTrace, MsgBoxStyle.Information, "Debug Msg")

        End Try

End Sub

I BELIEVE THE ISSUE IS BECAUSE OF THE SSL CERTIFICATE. AS I AM POSTING TO HTTPS RATHER THAN HTTP, I THINK I NEED TO ENCRYPT THE DATA SOMEHOW.

CAN YOU PLEASE ASSIST. AS WHEN I DO POST FROM HTML PAGE IT WORKS FINE BUT I BELIEVE THE WEB BROWSER ENCRYPTS THE DATA REQUESTING THE CERTIFICATE PUBLIC KEY. HOW CAN I IMPLEMENT THE SAME IN MY CODE?
0
Comment
Question by:imranbuchh
4 Comments
 

Author Comment

by:imranbuchh
ID: 18862119
Hello,

Its a 500 point question .. Pump your points .. Need help...

I checked when i use my browser a digital certificate gets saved in the browser certificates as it is an https url. Do i need to export that certificate from my browser and use it somehow ... Any ideas ...

Cheers,
Imran.
0
 
LVL 51

Accepted Solution

by:
ahoffmann earned 500 total points
ID: 18872806
<ou have to add your MyFieldName=myvalue to the POST's body (separated by a & if you already have data there)

(sorry don't know the proper syntax for .net)
0

Featured Post

VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: btan
Provide an easy one stop to quickly get the relevant information on common asked question on Ransomware in Expert Exchange.
When the confidentiality and security of your data is a must, trust the highly encrypted cloud fax portfolio used by 12 million businesses worldwide, including nearly half of the Fortune 500.
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
A simple description of email encryption using a secure portal service. This is one of the choices offered by The Email Laundry for email encryption. The other choices are pdf encryption which creates an encrypted pdf of your email and any attachmen…

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now