相关疑难解决方法(0)

HttpWebRequest.GetResponse在HTTP 304上抛出WebException

当Web服务器HttpWebRequest.GetResponse()使用HTTP 304(未修改)进行响应时,GetResponse()发生了a WebException,这对我来说非常奇怪.这是设计还是我错过了一些明显的东西?

.net http httpwebrequest http-status-code-304

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

Angularjs应用程序在从firebase托管服务器检索html模板时不处理304响应

当我的服务器以状态代码304响应时,我有一些用户无法访问我的angularjs应用程序上的某些模板.Angularjs正在记录[$compile:tpload],如下所示,视图不会显示给用户.因此,某种角度不会从缓存中获取视图.问题似乎非常间歇性地发生,并且在干净的浏览器缓存+页面刷新之后页面再次开始正常工作.

我用ui-router v0.3.2运行Angularjs v1.6.6并且我在firebase托管上托管我的静态文件.它是在最新版本上修复的吗?否则,我该如何处理这个案子呢?

[$ compile:tpload] http://errors.angularjs.org/1.6.6/$compile/tpload?p0=%2Fjs%2Ftemplate1%template1.html&p1=304

可能是未处理的拒绝:{"data":"","status":304,"config":{"method":"GET","transformRequest":[null],"transformResponse":[null],"jsonpCallbackParam" : "回调", "缓存":{}, "头":{ "接受": "text/html的"}, "URL": "/ p/p.html"}, "状态文本": ""," xhrStatus ":" 完成"}


使用LogRocket捕获请求/响应

URL: "https://url.com/js/p/a/template.html"
method: "GET"
status: 304
duration: "00:00.061"

REQUEST
headers
  Accept: "application/json, text/plain, */*"
body: null
credentials: ""
mode: ""
referrer: ""


RESPONSE
headers
  cache-control: "max-age=3600"
  date: "Sat, 15 Sep 2018 20:03:12 GMT"
  etag: ""f166a7577a895x3f7dcc5accae97dcba""
  expires: "Sat, 15 Sep 2018 17:45:33 GMT"
  vary: "Accept-Encoding"
  via: "1.1 varnish" …
Run Code Online (Sandbox Code Playgroud)

http-status-code-304 angularjs firebase angular-ui-router firebase-hosting

8
推荐指数
1
解决办法
322
查看次数

304未修改意味着控制台状态是什么?

我正在通过简单的聊天学习节点js。这是我的示例代码:

server.js

var mongo = require('mongodb').MongoClient,
    client = require('socket.io').listen(8888).sockets;
Run Code Online (Sandbox Code Playgroud)

index.html

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Node Chat System</title>
        <link rel="stylesheet" type="text/css" href="css/main.css" />
    </head>
    <body>
        <div class="chat">
            <input type="text" class="chat-name" placeholder="Enter your name" />
            <div class="chat-messages"></div>
            <textarea placeholder="Enter your message" ></textarea>
            <div class="chat-status">Status: <span>Idle</span></div>
            <script src="http://127.0.0.1:8888/socket.io/socket.io.js"></script>
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

然后重新启动节点服务器,然后加载页面并检查控制台> net选项卡

然后我在访问socket.io时的状态是:

304 Not Modified
Run Code Online (Sandbox Code Playgroud)

在我的教程中

200 Ok
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我也使用了wampserver,当我停止所有进程时,效果仍然相同。

你能帮我吗?

node.js socket.io

3
推荐指数
1
解决办法
5852
查看次数

Python 请求:如何处理状态码 304

我正在尝试使用requestsbs4从网站获取信息,但收到状态代码 304 并且没有来自request.get(). 我已经阅读并了解此代码表明资源已在我的缓存中。我如何从我的缓存访问资源,或者最好清除我的缓存以便我可以接收新资源?

我试过添加以下标题:headers={'Cache-Control': 'no-cache'}requests.get()但仍然有同样的问题。

此外,我已经研究了该requests-cache模块,但不清楚如何或是否可以使用它来解决问题。

代码:

import requests

r = requests.get('https://smsreceivefree.com/')

print(r.status_code)
print(r.content)
Run Code Online (Sandbox Code Playgroud)

输出:

304
b''
Run Code Online (Sandbox Code Playgroud)

python python-requests

-1
推荐指数
1
解决办法
2693
查看次数