如何将Json数据发布到URL ..?

时间:2013-11-20 05:35:48

标签: c# .net windows-phone-8 windows-phone json.net

我是wp8的新手,我不知道在网址上发布和更新我的数据,所以请任何人帮我发​​布/更新网址中的数据..

my header and content type...

Header - Accept: application/json
Content-Type application/json


MY Class Register with the variables... 

 public class Register 
    {
        public string email { get; set; }

        public string password { get; set; }
    }

我的设计..

enter image description here

当我点击ADD按钮时,它应该在我的网址中发布数据..所以PLZ帮我做了..

发布方法的MY CODE ..

              WebClient client = new WebClient();

              Register res = new Register();
              res.email = txt_email.Text;
              res.password = txt_password.Text;
              String json = JsonConvert.SerializeObject(res);


               client.Headers[HttpRequestHeader.Accept] = "application/json";
               client.Headers[HttpRequestHeader.ContentType] = "application/json";

               client.UploadStringCompleted += (object source, UploadStringCompletedEventArgs ex) =>
                 {
                     if (ex.Error != null || ex.Cancelled)
                      {
                         // Error or cancelled
                          MessageBox.Show(ex.Result);
                      }
                  };
               var uri = new Uri(url, UriKind.Absolute);
            //  client.Encoding = System.Text.Encoding.UTF8;
              client.UploadStringAsync(uri,json);  // message is the json content in string

错误..关于添加内容..

enter image description here

3 个答案:

答案 0 :(得分:0)

我在我的项目中使用RestSharp来做这种事情。如果你想访问cookie,它会简化一些事情。

他们的维基上有一些例子可以告诉你该怎么做。

http://restsharp.org/

答案 1 :(得分:0)

您可以使用WebClient

public void PostJSON()
{
    client = new WebClient();

    client.Headers[HttpRequestHeader.Accept] = "application/json";
    client.Headers[HttpRequestHeader.ContentType] = "application/json";

        client.UploadStringCompleted += (object source, UploadStringCompletedEventArgs e) =>
        {
            if (e.Error != null || e.Cancelled)
            {
                // Error or cancelled
            }
        };

        client.UploadStringAsync(url, message);  // message is the json content in string
}

答案 2 :(得分:0)

你的代码对我来说似乎是合法的。由于您在运行时收到错误,我怀疑您的模拟器中可能没有正确的Internet连接。或者,如果您从localhost运行Web服务,则必须帮助您的模拟器访问本地服务。

案例#1:没有正确的互联网连接

请参阅以下链接,并按照MSDN页面中的说明解决网络问题。 http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj681694(v=vs.105).aspx

案例#2:帮助模拟器连接到本地Web服务

即使您可以连接到外部Web内容,仍需要配置模拟器以访问本地Web服务。阅读下面链接中给出的MSDN文章。 http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj684580(v=vs.105).aspx

如果您需要进一步的帮助,请随时发表评论。