ChromelyResponse.Status 被忽略

我想返回一个带有ChromelyResponse. 但它被忽略并被 200 代码取代。


jQuery:


$.ajax({

    url: myLocalUrlToCsharp,

    type: 'POST',

    dataType: "json",

    accepts: "application/json; charset=utf-8",

    data: JSON.stringify(data),

    complete: function (output) {


        // output is always:

        // {

        //  readyState: 4,

        //  responseText: "{\"Data\":\"No Data\"}",

        //  responseJSON : {"Data":"No Data"},

        //  status: 200,

        //  statusText: "Ok"

        // }

    }

});

C#


using Chromely.Core.RestfulService;

...


private static ChromelyResponse Connect(ChromelyRequest request)

{

    return new ChromelyResponse(request.Id)

    {

        Status = 404,

        StatusText = "Not Found",

        Data = "No Data"

    }

}

谁能解释我的错误吗?我将 chromely 与 CefSharp 一起使用。


注意:有人可以添加标签chromely吗chromelyapps?我的声望还不够。


慕田峪4524236
浏览 75回答 1
1回答

跃然一笑

状态是根据请求处理的成功(或失败)来设置的。它并不是被设计为响应数据本身的一部分。如果您希望状态作为“内容”的一部分,那么使用“数据”属性,它将成为数据的一部分。private static ChromelyResponse Connect(ChromelyRequest request){    var content = new SomeClass() {        Status = 404,        StatusText = "Not Found",        Data = "No Data"    }    return new ChromelyResponse(request.Id)    {        Data = content    }}另一种方法是创建自定义 HTTP 方案处理程序来覆盖默认行为。
打开App,查看更多内容
随时随地看视频慕课网APP