繁体   English   中英

使用HttpResponseMessage时,不会从Web API获得任何响应

[英]Getting absolutely no response from Web API when using HttpResponseMessage

我在Web API上使用HttpResponseMessage ,因为它大大简化了事情。 我遇到的问题是,在IIS Express下运行的VS 2017中测试代码时,我的代码执行时没有问题,但是从Postman进行测试时,我得到的响应完全没有。 我想知道它是否与标题和/或配置有关。 这是邮递员发回的邮件:

无法获得任何响应连接到http:// localhost:12345 / Url / RequestUrl时发生错误

这是正在运行的代码的一部分:

[OperationContract]
[ADAuthorize(Action = "RequestUrl", Controller = "Url")]
[HttpPost]
public HttpResponseMessage RequestUrl(Stream inputServiceRequestParameters)
{
    Request = new HttpRequestMessage();
    Configuration = new HttpConfiguration();

    try
    {
        // Retrieve and place JSON parameters into object.
        var serviceRequestParameters = JsonFunctions.GetServiceRequestParameters(inputServiceRequestParameters);
        // Retrieve member GUID from LDAP.
        var contactId = LdapFunctions.GetMemberCrmGuid(serviceRequestParameters.MemberNumber);

        // Member information not found in LDAP, so return without processing.
        if (contactId == null)
        {
            var response = Request.CreateResponse(HttpStatusCode.InternalServerError,
                JsonFunctions.BuildErrorResponse("", Constants.ValidationMessage.MEMBER_NOT_IN_LDAP));

            response.Content = new StringContent(JsonFunctions.BuildErrorResponse("", Constants.ValidationMessage.MEMBER_NOT_IN_LDAP));
            response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

            return response;
        }

[此后课程继续上课...]

所有这些代码都能正常运行,但不会返回任何内容 甚至Fiddler也抱怨ReadResponse()失败

我看了无数的示例,但仍然不知道发生了什么,缺少了什么。

contactId

可以为null。 如果是这样,您的代码可能返回空响应,这将导致您描述的行为。

我找到了答案:基本上,我混合了MVC和Web API引用,并且在配置中有一些WFC! 我知道,当您引用旧的实验代码时就会发生这种情况。 当然可以吸取教训。 问题是.Net不会发出任何错误,它只会默默地失败。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM