Связаться с другим сайтом через программу? - PullRequest
0 голосов
/ 11 ноября 2010

Я знаю, что название не очень сложное, но я пробовал это несколько раз (чтобы выяснить, как), но я никогда не мог узнать, как это сделать. Я хочу делать такие вещи, как загрузить «paste» на pastebin.com, загрузить изображение на twitpic.com, загрузить файл на rapidshare.com и так далее.

Как бы я это сделал? Спасибо!

(Visual Basic 2010 Express | Windows 7 Ultimate)

Ответы [ 2 ]

3 голосов
/ 11 ноября 2010

Я осознаю, что Visual Basic 2010 Express будет каким-то образом взаимодействовать со стороной сервера.Если вы не смогли найти, вам нужно изменить язык.

Для публикации в твитпике вам нужно использовать их API givne по следующему URL.

http://twitpic.com/api.do

скажем

  <form action="http://twitpic.com/api/uploadAndPost">
<input name="media"></input> 
<input name="username"></input> 
<input name="password"></input> 
<input name="message"></input> 
</form>
0 голосов
/ 11 ноября 2010

Это зависит. Вы можете просто отправить междоменную форму (установить action для страницы в другом домене), или вы можете установить связь сервер-сервер, или вы можете использовать JSONP (JSON, заключенный в функцию звоните).

Код VB.NET для представления Pastebin:

Dim req As HttpWebRequest = DirectCast(WebRequest.Create("http://pastebin.com/api_public.php"), HttpWebRequest)
req.ContentType = "application/x-www-form-urlencoded"
req.Method = "POST"
Dim postData As String = "paste_code=Simple Example"
Dim postBytes As Byte() = Encoding.UTF8.GetBytes(postData)
req.ContentLength = postBytes.Length
Dim reqStream As Stream = req.GetRequestStream()
reqStream.Write(postBytes, 0, postBytes.Length)
reqStream.Close()
Dim resp As HttpWebResponse = DirectCast(req.GetResponse(), HttpWebResponse)
Dim respText As String = New StreamReader(resp.GetResponseStream(), Encoding.UTF8).ReadToEnd()

respText - URL-адрес сгенерированной вставки. Это, очевидно, может быть улучшено. Это начальная демонстрация.

...