0

我正在尝试让 Android 使用我自己制作的简单 WCF Web 服务。这是我的 WCF 服务定义:

    [WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json,
    RequestFormat = WebMessageFormat.Json,
    BodyStyle = WebMessageBodyStyle.Bare,
    UriTemplate = "/UploadCallLog2")]
    [OperationContract]
    String UploadCallLog2(String number, String cached_name, String duration, String date, String line_number);

我有两个问题: 1. 我的 HTTP 请求应该是什么样的?添加请求头时应该选择什么样的内容类型?2. 是否有正确的方法将输入参数作为 JSON 放入正文中,并且 web 服务可以自动检测输入参数的值?

弗雷德

4

1 回答 1

0

我建议通过 WCF 服务使用 MVC 项目。

控制器可以返回一个 JsonResult,MVC 库包含 Json 辅助方法,如果属性匹配,则可以将 json 对象序列化和反序列化为 c# 对象。

这也允许从任何支持 XmlHttpRequest 的客户端调用基于 MVC 的服务,使用 ContentType 作为“application/json”。根据您的请求类型和 SSL 下的数据安全性,您可以使用 HttpGet 或 HttpPost。您还可以利用身份验证模型来保护您的方法。

这只是一个非常干净的实现,没有任何复杂的服务器和客户端配置。有关类似方法的更多信息是 MVC 4 中的新 Web API。

于 2012-07-06T21:30:53.630 回答