通过程序联系其他网站?

时间:2010-11-11 05:05:30

标签: vb.net visual-studio-2010 twitpic pastebin

我知道标题不是很精细,但我已经多次尝试过(弄清楚如何),但我永远无法知道如何做到这一点。我想做的事情就像上传一个“粘贴”到pastebin.com,上传图片到twitpic.com,上传文件到rapidshare.com,等等。

我该怎么办?谢谢!

(Visual Basic 2010 Express | Windows 7旗舰版)

2 个答案:

答案 0 :(得分:3)

我意识到Visual Basic 2010 express将有一些与服务器端交互的方式。 如果找不到,则需要更改语言。

要在twitpic中发帖,您需要在以下网址中使用他们的API。

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>

答案 1 :(得分:0)

这取决于。您可以只进行跨域表单提交(将action设置为另一个域上的页面),或者您可以进行服务器 - 服务器通信,或者您可以使用JSONP(JSON包含在一个函数中)呼叫)。

用于Pastebin提交的VB.NET代码是:

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是生成的粘贴bin网址。这显然可以改善。这是一个初步的演示。