WebAPI不能在Fiddler中工作

本文关键字:工作 Fiddler 不能 WebAPI | 更新日期: 2023-09-27 18:11:57

我已经创建了一个POST WebApi,我可以调用如下:

<script type="text/javascript">
var TheData = {
    Number: "7181112222",
    Username: "myusername",
    Password: "mypassword",
    enable: "True",
};
$.ajax({
    type: "POST",
    cache: "False",
    url: "http://www.######.com/someapi/api/SettingsConfig",
    data: TheData
}).done(function (msg) {
    alert(msg);
}).error(function (msg) {
    alert('Fail');
});
</script>

当我运行这段代码时,我将得到一个'Success'的警报。

当我在fiddler中运行这段代码时…

文章http://www.######.com/someapi/api/SettingsConfig号码= 6464482035,用户名= metheuser&密码= 9999,使= True

<标题> 404错误

为什么不一致!

WebAPI不能在Fiddler中工作

在javascript代码片段中,您发布了一个JSON对象,而在fiddler示例中,它是一个x-www-form-urlencoded字符串。

您是否尝试在您的请求中包含Content-Type标头:

  • application/x-www-form-urlencoded和发送字符串
  • application/json和发布JSON对象

你的控制器的方法签名是什么样子的——你在第二个例子中击中了方法还是在那之前就出错了?

在这种情况下404实际上是什么意思- 'number'未找到/post data null

这种行为可能有两个原因:

  • Content-Type不正确,应设置application/json值;
  • API未启用CORS(在这种情况下,不允许从不受信任的域调用API);