从asp.net中的Web服务访问包装请求Web方法

时间:2011-07-04 08:54:45

标签: asp.net xml web-services json

我有一个采用多个参数的Web服务方法。 因此,设置了BodyStyle = WebMessageBodyStyle.Wrapped。 我想从Web服务客户端访问此方法,我确实将服务方法的URL添加到Reference-> Add Services,我收到以下错误。

“下载'http:// localhost:8080 / Api / StoreI'时出错。

请求失败,HTTP状态为405:方法不允许。

元数据包含无法解析的引用:'http:// localhost:8080 / Api / StoreI'。

响应消息的内容类型application / json与绑定的内容类型(application / soap + xml; charset = utf-8)不匹配。

如果使用自定义编码器,请确保正确实施IsContentTypeSupported方法。

响应的前323个字节是:'{“ErrorCode”:110,“ErrorDetails”:null,“Message”:“传入消息具有意外的消息格式'Raw'。操作的预期消息格式是'Xml','Json'。

这可能是因为尚未在绑定上配置WebContentTypeMapper。有关更多详细信息,请参阅WebContentTypeMapper的文档。“}'。

远程服务器返回错误:(500)内部服务器错误。 如果在当前解决方案中定义了服务,请尝试构建解决方案并再次添加服务引用。“

我该怎么做才能解决此错误? 从客户端访问安全Web服务的步骤是什么? 我是一个新的Web服务。 回复将受到高度赞赏。 感谢。

1 个答案:

答案 0 :(得分:0)

我不是专家,而是改变  BodyStyle = WebMessageBodyStyle.Wrapped 至 BodyStyle = WebMessageBodyStyle.Bare

在操作描述中使用包装不会在邮件正文中添加一层安全性。它只是将请求(或响应)包装在XML元素中