2012-05-15 95 views
1

我正在使用基本Response.StatusCode将状态码设置为9999.此页面正在通过AJAX呼叫调用,检查readyState = 4上的状态代码并使用Response.StatusDescription设置的消息弹出9999上的警报。我得到的全部是readyState = 4statusCode = 200。如果需要,我可以提供代码,但不能修剪,所以如果需要/请求代码,我会减少它。任何帮助表示赞赏。用C#ASP.NET和Javascript编码。无法设置状态码

UPDATE目的:我告的状态代码9999表示一个将用户添加到SQL表时,“用户已存在”的错误。这是我发现这个错误发生时让AJAX调用知道的唯一方法。

+1

对不起,我有点困惑 - 这些数字是C#和JavaScript的?你从C#发送9999,并在JavaScript中看到200? – Rup

+3

你为什么要重写HTTP状态码?他们确实有你知道的意思。 – Oded

+0

@Rup是的我从C#发送9999,并在JavaScript中获得200个 – steventnorris

回答

8

您无法填写状态代码。 Here are the valid ones

我认为最好的选择是在json响应中发送状态和消息。

{ 
    status: 9999, 
    message: "User already exists" 
} 

这里是一所以有可能会教你如何做到这一点一些链接发布: Returning JSON object from an ASP.NET page

+0

我从来没有处理过json。我在上面添加了我的尝试的目的。 json会为此工作吗?你有没有链接到一个好的json教程或我可以用自己的教育? – steventnorris

+0

@steventnorris当然可以!我添加了一个可以帮助你的链接。 – lbstr

+0

为了我的目的(阻力最小的路径)使用了409状态码,但我看了一下JSON,它非常整齐。本来工作也一样。 – steventnorris