我正在使用WCF和实体框架处理一个web服务,我想知道如何查看HTTP状态代码或将其返回给调用客户端。
我拥有的代码如下:
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest, UriTemplate = "/GetUsers")]
List<User> GetUsers();
public List<User> GetUsers()
{
var userController = new UserController();
return userController.GetUsers();
}
public List<User> GetUsers()
{
List<User> serverResponse = new List<User>();
try
{
using (var db = new MyEntities())
{
List<user> userList = db.users.ToList();
foreach (user userRecord in userList)
{
User userDto = new User();
userDto.userId = userRecord.user_id;
userDto.name = userRecord.user_name;
serverResponse.Add(userDto);
}
}
}
catch (Exception ex)
{
}
return serverResponse;
[DataContract]
public class User
{
[DataMember(Name = "name")]
public string name { get; set; }
[DataMember(Name = "userId")]
public int userId { get; set; }
}
[
{
"name": "APIClientTestUser",
"userId": 212,
}
]
无论是使用这个JSON还是在其他地方,我都希望客户机知道调用是否通过适当的HTTP代码成功或失败。任何关于如何做到这一点的提示或建议都将不胜感激。
最简单的方法可能是将结果包装成一般的响应对象
[DataContract]
public class Response<T>
{
[DataMember]
public T Result { get; set; }
[DataMember]
public int Status { get; set; }
}
// then your declaration
Response<List<User>> serverResponse = Response<List<User>>();
// on success
serverResponse.Result = userList;
serverResponse.Status = 200; // ok
// on fail
serverResponse.Status = 500; // fail
// and contract
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest, UriTemplate = "/GetUsers")]
Response<List<User>> GetUsers();
我正在jMeter中执行负载测试,其中有两个线程组,每个线程组都有50个用户,上升周期为60秒。使用Blazemeter,我记录了一个填写和提交表格的会话,然后稍微修改了一下。其中一组是使用POST方法登录,然后提交表单,另一组是匿名用户填写的。当我运行测试时,我遇到了错误: 响应代码:非HTTP响应代码:org.apache.HTTP。ConnectionClosedException响应消息:
问题内容: 对于不正确的Ajax操作,我将HTTP标头代码设置为403并发送以下响应: 但是,在处理错误时我无法访问此数据…是否可以从jqXHR访问“消息”数据? 像jqXHR.message之类的东西? 非常感谢您的帮助… EDIt: 返回: 但是xhr.responseText.message不返回任何内容… 编辑:此代码有效: 问题答案: 您应该进入jQuery“错误”回调… http://
凌空JSON解析技术对此有用吗?
问题内容: 我最近公布的我面对这个问题的详细说明,这里的SO。由于我无法发送实际的请求,因此我使用了超时来模拟异步行为。在@Gloopy的帮助下,从模型到视图的数据绑定工作正常 现在,当我使用而不是(在本地测试)时,我可以看到异步请求成功,并且在我的服务中充满了json响应。但是,我的看法没有更新。 在这里更新了Plunkr 问题答案: 这是一个可以满足您需求的Plunk:http ://plnk
用于存储Web服务器日志记录 服务器日志仅允许存储在Azure Blob容器上。根据配置,日志按预期存储在Blob容器上。现在,我想使用这些日志在Azure Log Analytics上显示。 在Log Analytics资源管理器上,我可以查看除Web服务器(iis日志)以外的所有其他来源的日志。我错过了什么?