我的转换,麻烦看一下哪里有问题。(参数值我换了,和上面的不一样,不用考虑。) string url = "http://gps.smart-ptt.com:7088";
string json = "";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "post";
request.Headers.Add("Orgid", "ztss000");
request.Headers.Add("Method", "GetOrgLatLng2");
request.Headers.Add("Time", "0");
string sha1 = Commons.SHA1("123456");
request.Headers.Add("Pwd",sha1);
request.Accept = "text/html, application/xhtml+xml, */*";
request.ContentType = "application/x-www-form-urlencoded"; string RequestString = url + "?Orgid=ztss000&Method=GetOrgLatLng2&Time=0&Pwd=" + sha1;
byte[] buffer = Encoding.UTF8.GetBytes(RequestString.ToString());
request.ContentLength = buffer.Length;
request.GetRequestStream().Write(buffer, 0, buffer.Length); HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
{
json = reader.ReadToEnd();
}
Response.Write(json);
string json = "";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "post";
request.Headers.Add("Orgid", "ztss000");
request.Headers.Add("Method", "GetOrgLatLng2");
request.Headers.Add("Time", "0");
string sha1 = Commons.SHA1("123456");
request.Headers.Add("Pwd",sha1);
request.Accept = "text/html, application/xhtml+xml, */*";
request.ContentType = "application/x-www-form-urlencoded"; string RequestString = url + "?Orgid=ztss000&Method=GetOrgLatLng2&Time=0&Pwd=" + sha1;
byte[] buffer = Encoding.UTF8.GetBytes(RequestString.ToString());
request.ContentLength = buffer.Length;
request.GetRequestStream().Write(buffer, 0, buffer.Length); HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
{
json = reader.ReadToEnd();
}
Response.Write(json);
{
string url = "http://gps.smart-ptt.com:7088";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "post"; //java未定义post,但是看你c#定义了post.
request.Headers.Add("Orgid", "ztss000");
request.Headers.Add("Method", "GetOrgLatLng2");
request.Headers.Add("Time", "0");
SHA1 sha = new SHA1CryptoServiceProvider();
string sha1 = BitConverter.ToString(sha.ComputeHash(Encoding.ASCII.GetBytes("123456"))).Replace("-", "");
sha.Dispose();
request.Headers.Add("Pwd", sha1);
request.Accept = "text/html, application/xhtml+xml, */*";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = 0;
request.Timeout = 6000; // 为了不挂死设置超时
request.ReadWriteTimeout = 6000; //同上
try
{
MemoryStream output = new MemoryStream();
Stream Stream = request.GetRequestStream();
Stream.Write(output.ToArray(), 0, 0); //这里不知道干嘛?写空数据?
output.Dispose();
Stream.Flush();
Stream.Close();
StreamReader input = new StreamReader(request.GetResponse().GetResponseStream()); //post卡在这里.
string urlSTtring = ""; //因为post无法获取服务器响应,自己看着办,我是照着java翻译过来的。
string current;
while ((current=input.ReadLine()) != null)
urlSTtring += current;
input.Dispose();
Debug.Write(urlSTtring);
}
catch (WebException ex)
{
MessageBox.Show(ex.Message);
}
}