标签: response

ASP.NET MVC中的jQuery AJAX响应

甚至不确定这是否是标题问题的正确方法.我知道我的AJAX调用都是错误的...这就是我现在正在做的事情(顺便说一句,我正在使用ASP.NET MVC后端):

我用来jQuery.ajax将一些数据发布到一个动作,这将加载我在响应中捕获的视图.它基本上为一个动作提供了一些数据,并取回了一些HTML.

假设我想创建一个经过验证的Ajax调用.如何在出错时收回验证消息?例如,Ajax登录表单.如果用户无法验证,我想告诉他们......而不是简单地无所事事.

抱歉天真的问题,我只是不知道如何在Google上找到解决方案.

先感谢您!

validation ajax asp.net-mvc jquery response

5
推荐指数
2
解决办法
9403
查看次数

下载期间的ASP.net内存使用情况

在我工作地点的ASP.net站点上,以下代码块负责处理文件下载(注意:此处未使用Response.TransmitFile,因为下载的内容是从zip文件流式传输的):

private void DownloadFile( Stream stream)
{
        int bytesRead;
        int chunkSize = 1048576; //1MB

        byte[] readBuffer = new byte[chunkSize];
        while ((bytesRead = stream.Read(readBuffer, 0, readBuffer.Length)) != 0)
            {
                if(!Response.IsClientConnected)
                    break;
                byte[] chunk = new byte[bytesRead];
                Array.Copy(readBuffer,0,chunk,0,bytesRead);
                Response.BinaryWrite(chunk);
                Response.Flush();
        }
        stream.Close();
}
Run Code Online (Sandbox Code Playgroud)

我们的用户经常下载数百MB的文件,这可以很快地咀嚼服务器内存.我的假设是这是由于响应缓冲.那有意义吗?

我刚刚读到了Response对象的'buffer'属性.如果我将其设置为false,是否会阻止Response.BinaryWrite()调用缓冲内存中的数据?一般来说,在这种情况下限制内存使用的好方法是什么?也许我应该从zip流式传输到临时文件,然后调用Response.TransmitFile()?

编辑:除了可能的解决方案,我对上面代码中存在的内存使用问题的解释非常感兴趣.为什么这会消耗远远超过1MB,即使在每次循环迭代时调用Response.Flush?它只是在每次循环迭代时发生的不必要的堆分配(并且不会立即得到GC),或者还有其他工作吗?

asp.net response response.write

5
推荐指数
1
解决办法
3120
查看次数

在Javascript请求后使用Javascript从服务器获取响应

我的Javascript函数请求到aspx页面.İts代码:

 var xhr = ("XMLHttpRequest" in window) ? new XMLHttpRequest() : new ActiveXObject("Msxml3.XMLHTTP");
    xhr.open("GET", = 'http://www.example.net/abc.aspx', true);
    xhr.send(""); 
Run Code Online (Sandbox Code Playgroud)

在此请求之后,我想从此页面发回响应并在客户端捕获它.我怎么做?

javascript response request

5
推荐指数
1
解决办法
5万
查看次数

response.sendRedirect无效

方法response.sendRedirect()在我的程序中不起作用.

代码通过并成功打印out.println("wrong user");,但重定向到谷歌分页不起作用.

String id="java";

try 
{
    query = "select Id from Users where Id= ?";
    ps  =Database.getConnection().prepareStatement(query);
    ps.setString(1, id);
    rs  =   ps.executeQuery();

    if(rs.next())
    {
        out.println(rs.getString(1));
    }
    else 
    {
        out.println("wrong user");
        response.sendRedirect("www.google.com");
    }
    rs.close();
}
catch(Exception e)
{
    //e.printStackTrace();
    System.out.print(e);
}   
Run Code Online (Sandbox Code Playgroud)

任何答案?

jsp jdbc response

5
推荐指数
2
解决办法
3万
查看次数

Localhost花了太长时间.该怎么办?

我正在做一个项目.昨天它运行得非常好,但是当我将系统操作系统从Windows 7 32位更新到Windows 8 64位并将服务器从32位更新到64位时,我的Php项目中的localhost响应速度非常慢(6 Senonds延迟每页)我也没有改变脚本中的任何内容.无法确定可能出现的问题.

php windows response localhost windows-8

5
推荐指数
1
解决办法
2万
查看次数

响应状态 xmlns d2p1

问题是:当使用IHasResponseStatuspublic ResponseStatus ResponseStatus { get; set; }属性时,如何使用一个命名空间进行响应,并删除前缀 d2p1 on ResponseStatus

http://schemas.tagway.com.ua/types为所有 Web 服务模型使用一个命名空间;除了节点 ResponseStatus 之外,响应看起来很棒,因为 ServiceStack: 它会自动xmlns:d2p1="http://schemas.servicestack.net/types"为 ResponseStatus添加自己的命名空间。

服务模式:

namespace NTPCore.ServiceModel.Operations.Balance
{
    public class Balance
    {
        public Auth auth { get; set; }    
    }

    public class BalanceResponse : IHasResponseStatus
    {
        public ResponseStatus ResponseStatus { get; set; }
        public int balance { get; set; }
        public int limit { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

NTPCore.ServiceModel 项目中的 AssemblyInfo.cs:

[assembly: ContractNamespace("http://schemas.tagway.com.ua/types",    ClrNamespace = "NTPCore.ServiceModel.Operations.Balance")] …
Run Code Online (Sandbox Code Playgroud)

namespaces response xml-namespaces servicestack

5
推荐指数
1
解决办法
2609
查看次数

浏览器不保留响应头的cookie

我正在尝试做一些简单易行的事情:设置一个cookie!但浏览器(Chrome和Safari测试)只是忽略了它们.所以响应头看起来像:

Access-Control-Allow-Credentials:true
Access-Control-Allow-Origin:*
Connection:keep-alive
Content-Encoding:gzip
Content-Type:application/json; charset=utf-8
Date:Wed, 19 Jul 2017 04:51:51 GMT
Server:nginx
Set-Cookie:UserAuth=<some jwt>; Path=/; Domain=10.10.1.110; Expires=Wed, 19 Jul 2017 12:51:51 GMT; HttpOnly; Secure
Transfer-Encoding:chunked
Vary:Origin
Run Code Online (Sandbox Code Playgroud)

请求确实包括withCredentials=true.但Chrome中的Cookie部分是空的.我已经尝试完全删除域,删除路径,我能想到的每个配置,但浏览器只是不会播放球.

我错过了什么?

browser cookies response

5
推荐指数
1
解决办法
1450
查看次数

如何使用快速响应保留在同一页面而不进行重定向?

考虑一个简单的表单,它将电子邮件作为输入。如果身份验证失败,则“提交”按钮将调用引导模式。如果成功,它将重定向到下一个视图。

当出现引导模式时,浏览器会不断加载页面,等待响应。

我在服务器端使用此代码:

app.post('/', (req, res) => {
    Users.findOne({
        email: req.body.email
    })
    .then(user => {
        if (user) {
            obj = req.body.email
            res.redirect('/survey')
        }
    })
})
Run Code Online (Sandbox Code Playgroud)

我试图添加一条else语句,以防找不到用户:

...
else  {
  console.log('User not found')
  return
}
Run Code Online (Sandbox Code Playgroud)

我不想重定向到同一页面,因为模式无法正常工作。

是否有res实现此目的的方法?

javascript response node.js express

5
推荐指数
1
解决办法
476
查看次数

排球长HTTPS请求从未响应

我创建了一个齐发请求以接收HTTPS后端。

RequestQueue queue = Volley.newRequestQueue(uiCallback.getContext(),
    new SSLVerification().getHurlStack(uiCallback.getContext()));

JsonObjectRequest req = new JsonObjectRequest(Request.Method.GET,
    requestUrl, null, new Response.Listener<JSONObject>() {
    ...
}
req.setRetryPolicy(new DefaultRetryPolicy(3_600_000, 0, 0));

queue.add(req);
Run Code Online (Sandbox Code Playgroud)

在清单中,我添加了Internet权限,如下所示:

<uses-permission android:name="android.permission.INTERNET" />
Run Code Online (Sandbox Code Playgroud)

只需很短时间的请求,一切都可以正常工作。

但是,如果在请求后3分钟内收到响应,则应用程序什么也不会收到。

在后端,我设置了一个断点。3分钟后,我让后端将响应发送给应用程序,但没有任何反应。没有成功,没有错误,仅此而已。

如果我发出不带的HTTP请求SSLVerification,那么6分钟后我也会收到响应。相反,HTTPS请求超过3分钟只是不想工作。

进行更改RetryPolicy以发出许多请求,这只是一种解决方法,不是一种选择。

java https android response android-volley

5
推荐指数
1
解决办法
143
查看次数

压缩响应无效

我想在我的Asp.Net网站中压缩响应。我写了这段代码:

public static void CompressPage(HttpRequest Request, HttpResponse Response)
{
    string acceptEncoding = Request.Headers["Accept-Encoding"];
    Stream prevUncompressedStream = Response.Filter;

    if (acceptEncoding.IsEmpty())
    {
        return;
    }

    acceptEncoding = acceptEncoding.ToLower();

    if (acceptEncoding.Contains("gzip"))
    {
        Response.Filter = new GZipStream(prevUncompressedStream, CompressionMode.Compress);
        Response.AppendHeader("Content-Encoding", "gzip");
    }
    else if (acceptEncoding.Contains("deflate"))
    {
        Response.Filter = new DeflateStream(prevUncompressedStream, CompressionMode.Compress);
            Response.AppendHeader("Content-Encoding", "deflate");
    }
}
Run Code Online (Sandbox Code Playgroud)

并称之为Page_Load事件:

protected void Page_Load(object sender, EventArgs e)
{
    ...
    ZipHtmlPage.CompressPage(Request, Response);
}
Run Code Online (Sandbox Code Playgroud)

问题是当我运行有无上述代码的代码时Page_Load,响应的大小不会改变。

在此处输入图片说明

问题出在哪里?

谢谢


编辑1)

我认为这"Content-Encoding", "gzip"不会增加标题:

在此处输入图片说明

不知道为什么


编辑2)

当我HttpModule用于执行http压缩时: …

c# asp.net gzip response http-compression

5
推荐指数
1
解决办法
273
查看次数