我想从我的Windows应用程序向我的Web服务器发送数据。
首先,我使用URL参数发送数据,但由于URL长度限制,它因大数据而失败。然后我尝试发送文件上传等数据,但我的数据不是文件。这是非常长的字符串(大约4k字符)。
因此,互联网上的文件上传教程我用我的字节数组替换了FileStream,但在服务器端$_FILES
变量是一个空数组。
这是我的代码。
Sub sendData(ByVal data As String)
Dim enc_data As String = EncryptRJ256(data)
Dim byteData() As Byte = Encoding.UTF8.GetBytes(enc_data)
Dim postReq As HttpWebRequest = WebRequest.Create("http://example.com")
postReq.Method = "POST"
postReq.KeepAlive = True
postReq.AllowWriteStreamBuffering = True
postReq.ContentLength = byteData.Length
Dim postreqstream As Stream = postReq.GetRequestStream()
postreqstream.Write(byteData, 0, byteData.Length)
postreqstream.Close()
Dim postresponse As HttpWebResponse
postresponse = postReq.GetResponse()
Dim postreqreader As New StreamReader(postresponse.GetResponseStream())
Dim thepage As String = postreqreader.ReadToEnd
File.WriteAllText("C:\Users\kenar\Desktop\response.txt", thepage)
End Sub
服务器端没有任何显示内容。我正在使用apache web服务器并在PHP脚本上检查$_FILES
变量。
答案 0 :(得分:0)
您似乎没有上传文件,我建议您尝试检查$ _POST而不是数据,因为我在检查$ _GET之前猜测。如果您想要作为文件提交,您还必须设置适当的内容类型。