Solved

Transfer files from one server to another using httprequest

Posted on 2008-10-16
3
797 Views
Last Modified: 2013-12-17
I need to be able to transfer files between 2 web servers on totally different domains.  I was told that I can post a file from one server to an ashx handler on the other server using the publicly accessible URLs (and some basic authentication).  So far, all my code does is spin its wheels when


StreamWriter myWriter = null;

            HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create("http://server2");
            objRequest.Method = "POST";
            FileStream fs = new FileStream(
 "\defaultsmall.jpg",FileMode.Open,FileAccess.Read);
            byte[] data = new byte[fs.Length];
            fs.Read(data,0,Convert.ToInt32(fs.Length));
            fs.Close();
            objRequest.ContentLength = data.Length;
            objRequest.ContentType = "application/x-www-form-urlencoded";
            myWriter = new StreamWriter(objRequest.GetRequestStream());
            myWriter.Write(data);
            myWriter.Close();
            string result = "";
            HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
            using (StreamReader sr =
               new StreamReader(objResponse.GetResponseStream()))
            {
                result = sr.ReadToEnd();
                sr.Close();
            }

My handler code is just :

public class TransportF : IHttpHandler {
   
    public void ProcessRequest (HttpContext context) {
        context.Response.Write("done");
           }
 
    public bool IsReusable {
        get {
            return false;
        }
    }

}


I understand that my handler code is lacking, but right now im focusing on the page that is actually trying to post the file.  Currently, it is giving me:

The request was aborted: The request was canceled. at System.Net.ConnectStream.CloseInternal(Boolean internalCall, Boolean aborting) at System.Net.ConnectStream.System.Net.ICloseEx.CloseEx(CloseExState closeState) at System.Net.ConnectStream.Dispose(Boolean disposing) at System.IO.Stream.Close() at System.IO.StreamWriter.Dispose(Boolean disposing) at System.IO.StreamWriter.Close()

when I try to close myWriter.  I know ive got a ways to go to get this to work, or maybe Im not even on the right track, but I cant seem to find any code examples that are helping.  Any advice would be greatly appreciated!!!
0
Comment
Question by:Skeletor11
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 13

Accepted Solution

by:
TechTiger007 earned 500 total points
ID: 22739087
You can do this by creating an aspx file with fileupload control in it. You can post the file to this page from the other page

Here is a sample that you can start with
http://forums.asp.net/t/1309555.aspx
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Upgrading my SSIS package in VS 2012 6 84
transition to visual .net from vb6 5 59
Get sourcecode path 14 46
Starting to use Git with Visual  Studio Online 1 19
This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
More often than not, we developers are confronted with a need: a need to make some kind of magic happen via code. Whether it is for a client, for the boss, or for our own personal projects, the need must be satisfied. Most of the time, the Framework…
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

740 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