http://localhost:51238/RestService.svc/FOSLoadingS1Opening?Data=[
{ 
"Name":"Sachin", 
"City":"Bengalueu", 
"FimStatus":"false", 
"Deno1":"50", 
"Deno2":"100", 
"Deno3":"500", 
"Deno4":"2000", 
"IndtVal1":"2500", 
"IndtVal2":"5000"  }]

我能够传递带有查询字符串的json字符串。 但是,当我想要传递不带查询字符串的传递时,出现错误。

http://localhost:51238/RestService.svc/FOSLoadingS1Opening/[
{ 
"Name":"Sachin", 
"City":"Bengalueu", 
"FimStatus":"false", 
"Deno1":"50", 
"Deno2":"100", 
"Deno3":"500", 
"Deno4":"2000", 
"IndtVal1":"2500", 
"IndtVal2":"5000"  }]

当我通过URL上方时,出现错误“错误请求”。

我想不使用查询字符串就传递json字符串。 请提出如何实现。

===============>>#1 票数:0 已采纳

您必须将WebInvoke与POST方法一起使用。

[OperationContract]
[WebInvoke(Method = "POST",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "SaveData/{id}")]
string SaveData(YourType typeObj);

现在从客户端构造对象,并通过ajax调用发送json字符串化数据。

    var obj = {
        "Name":"Sachin", 
        "City":"Bengalueu", 
        "FimStatus":"false", 
        ...
    };
    $.ajax({
        type: "POST",
        url: "http://localhost/wcf.svc/SaveData/0",
        data: JSON.stringify(obj),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        processData: true,
        success: function (data, status, jqXHR) {
            alert("success..." + data);
        },
        error: function (xhr) {
            alert(xhr.responseText);
        }
    });

  ask by Abhilash Saggam translate from so

未解决问题?本站智能推荐:

2回复

如何在WCF 4.0 REST中将位置标头设置为另一服务的UriTemplate而不使用魔术字符串?

考虑以下两个WCF 4.0 REST服务: 本质上,当某人在工作空间中创建文档时,Location标头设置为文档的位置,这与调用DocumentService.GetDocument操作实质上是相同的。 我的global.asax如下所示: WorkspaceService
2回复

Wcf中的WebInvoke POST“方法不允许”

我的Rest wcf服务如下... 当我使用Restsharp如下使用这项服务时 甚至尝试了如下的webget方法。 我无法将response.StatusCode设置为NotFound,即使我检查了提琴手,服务也没有命中,并且当我在composer中验证了服务URL时,
1回复

WCF REST错误HTTP 307

我有一个REST WCF服务。 当对此服务进行POST尝试以执行如下所述的操作时,我收到以下错误: 错误: HTTP 307没有操作侦听https://xx.xxx.xx.xxx/EnrollmentServer/Discovery.svc ,但是有一个操作正在侦听https://xx
1回复

以%20结尾的WCF REST URI失败,显示404

WCF REST Web服务以以下格式提供查找: 搜索文本hello或hello%20world ,并且服务正确执行。 但是,当使用https:// mysite / mycontract / search / hello%20中以空格结尾的文本时,服务将失败并显示404。没有自定义路
1回复

将字符串(json格式)传递给WCF restful,然后返回字符串(json格式)

我遇到了将以json格式格式化的字符串传递给wcf restful服务的问题。 它给我Http400错误。 我不知道怎么了 这是我的代码 IService.cs Service1.cs 客户的default.cs 客户的MyUser.cs
1回复

WCF Restful和带有特殊字符的查询字符串

我正在使用带有Restful API的WCF。 从客户端,我发出带有查询字符串“ http://example.com/6500/%2fSIZ7 ”的GET请求。 参数“ 6500”和“%2fSIZ7”。 但是在服务器上,我只收到“ 6500”和“ SIZ17”的值,并且没有特
1回复

WCF REST:不区分大小写的查询字符串参数,建议的命名约定 - 使用下划线或?

看来你可以传递给WCF REST中的rest方法的查询字符串参数是个例子 - 实际上这是有意义的。 使用_(下划线)??有两个单词的参数的最佳命名约定是什么? 我从来不喜欢这个,我更喜欢使用camelCasing,但如果它不敏感我还有其他选择吗? 例如,这是我的方法的WebGet
1回复

将字符串从android传递到wcf restful服务变得空

有一个wcf webservice,当从android进入POST模式时,该webservice进入服务的值为null。 cs文件如下: [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, Respo
1回复

获取WCF REST服务的RAW请求字符串

我创建了一些WCF REST服务,这些服务接受JSON对象请求并返回JSON对象响应。 我需要从Web Service方法捕获原始JSON字符串。 当前,我可以访问反序列化的对象,但是我还需要提交给Web服务的RAW JSON字符串。 我查看了WCF文档并四处张望,不幸的是,这似
1回复

当url段为json字符串时,在访问WCF Rest服务(WebGet)时未找到404

在我的项目中,我必须将动态Json字符串传递给WCF Rest服务web get。 当我传递一些字符串,如下所示一切正常。 HTTP://本地主机:58014 / MyService.svc / API /查询/ somestirng 但当我传递json字符串作为url段未找到