We need a web application written in VB 2008 that is operating approximately like a simple proxy server.
More specifically: this application will download a file from a site from another web server and in the same time it sends it to a user using a web browser (IE, FireFox, Opera etc..). It will also keep a copy of the file on the local disk of the server.
For example: let’s say we have a website called [url removed, login to view] and it has a page with an input text and a button ‘download’.
This runs on IIS7 and Win2008.
A user visits the [url removed, login to view] site and sees the page we have described above. He fills in the input text with a file link that he wants to download which file is on another server.
E.g. [url removed, login to view] and clicks ‘download’.
Our server [url removed, login to view] will act as followings:
1. It will get the link and connect to [url removed, login to view] and will start downloading.
2. As it downloads some KB, it will respond to the user to save the file.
3. In the same time it will save the file locally.
4. It will start a loop where it will get some data from the [url removed, login to view] and will send it to the user.
This is possible using HttpWebRequest and HttpWebResponse objects.
1. This application should be able to work multi instance because there can be multiple downloads from users.
2. It must send custom cookies to the server from where the files are downloaded.
3. The application will have to be able to download also from https server.
4. If the server from where the files are downloaded has higher speed from the user, there should be no problem and vice versa.
5. Before the application starts downloading a file, it will first check if the file exists locally (some other user previously has downloaded the file) and if it finds it locally, it will not download it again but send it from the local disk.
6. IMPORTANT: the file shouldn’t be downloaded first from the [url removed, login to view] and then start the procedure of sending the file to the user, but as it downloads some KB it should start responding. Because if a file is 2 GB, it is not possible that the user is waiting for 30 min and then start the downloading of this file to his local disk.
If you would like to undertake this project, you must be able to show us a demo on your own server and when we see that it is working, we will pay and you will send us the source code.