我的转换,麻烦看一下哪里有问题。(参数值我换了,和上面的不一样,不用考虑。)           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);

解决方案 »

  1.   

            private void button1_Click(object sender, EventArgs e)
            {
                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);
                }
            }
      

  2.   

    java 挺好的,为啥转c#,我现在都后悔转c#了