使用React开发新项目时,遇见了刷新页面,直接访问二级或三级路由时,访问失败,出现404或资源加载异常的情况,本篇针对此问题进行分析并总结解决方案。背景使用webpack-dev-server做本地开发服务器时,正常情况只需要简单使用webpack-dev-server指令启动即可,但是当项目处于以下两种情况时,往往需要有嵌套路由和异步加载路由: 我们使用react-router这种路由库构建单页面应用路由;使用html-webpack-plugin插件动态将加载js的<s...
前言 大家都知道对于单页应用,官方提供了vue-router进行路由跳转的处理,而最近在做一个基于vue-router的SPA,想对无效路由(404)页面做下统一处理。这次我真的没有在官方文档找到具体的说明[捂脸]所以本文仅是我DIY的一个思路,求轻虐=_= 在我的理解中,vue-router是根据path去匹配注册的route,匹配到则加载对应的组件,匹配不到则重置(或者说清空)对应的router-view。所以,我们不做处理的话,最终页面展示的是一片空白。那么,...
通常,我们在使用nodejs发送http请求时,一旦遇到404响应,nodejs内部会一直请求下去,直到超出它自己设定的响应时长(最让人恶心的地方就是这个时长还是没法修改的。)很多人在这里碰到了麻烦。我是在做arcgis地图项目的时候,客户提出需要使用天地图提供的底图服务,当时我直接使用silverlight客户端的Arcgis API进行http请求(同样是内部请求,不开源的东西就是这么让人郁闷),同样碰到了一个进度条一直卡在那的问题。经过调试...
在开发中,重定向和404这种需求非常常见,使用React-router4.0可以使用Redirect进行重定向最常用的就是用户登录之后自动跳转主页。 import React, { Component } from react; import axios from axios; import { Redirect } from react-router-dom;class Login extends Component{constructor(){super();this.state = {value: , logined: false};this.handleChange = this.handleChange.bind(this);this.toLogin = this.toLogin.bi...
因为我们的应用是单页客户端应用,当使用 history 模式时,URL 就像正常的 url,可以直接访问http://www.xxx.com/user/id,但是因为vue-router设置的路径不是真实存在的路径,所以刷新就会返回404错误。 想要history模式正常访问,还需要后台配置支持。要在服务端增加一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,则应该返回同一个 index.html 页面,这个页面就是你 app 依赖的页面。 也就是在服务端修改404错误页...
在使用jquery uploadify时如果不设置button_image_url参数,就会出现一些多余的get请求,甚至报404的错误,这是该插件的一个bug,官方给出的解决方案如下: 找到如下代码: this.settings.upload_url = SWFUpload.completeURL(this.settings.upload_url); this.settings.button_image_url = SWFUpload.completeURL(this.settings.button_image_url)修改成 this.settings.upload_url = SWFUpload.completeURL(this.settings.upload_...
在公司中使用nodejs构建代理服务器实现前后台分离,代码不能拿出来,然后出现httpProxy代理资源的时候老是出现404.明明被代理的接口是存在的。代码大概如下: var http = require(http),httpProxy = require(http-proxy);var proxy = httpProxy.createProxyServer({});var server = http.createServer(function(req, res) {proxy.web(req, res, { target: http://www.cnblogs.com/xiaopen/ }); });console.log("listening on port ...
运营网站久了之后,无法避免会出现图片404的情况,原因可能是图片文件本来就不存在或目前不存在。常见的解决方案是将404图片隐藏或者是替换为默认的图片。 img标签事件属性 img标签可使用的时间属性有: onabort, onbeforeunload, onblur, onchange, onclick, oncontextmenu, ondblclick, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, onerror, onfocus, onkeydown, onkeypress, onkeyup, onl...
在用 Express 的时候,路由是我最困惑的事之一。知道用 app.get(*) 可以处理所有页面,但这样除了自定义的其他路由外,静态文件是被忽略的。最近在写一个小工具的时候,找到了一个解决方案: 代码如下:var express = require(express), router = require(./routes); var app = module.exports = express.createServer(); // Configurationapp.configure(function () { // ... // 别把顺序写反了 app.use(express.s...
代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=GBK"><title>404 Not Found</title></head><body> <h1>找不到指定的页面</h1> <span id="totalSecond">3</span>秒后自动返回</body><script language="javascript" type="text/javascript"><!-- var second = document.getElementB...
将下面代码保存到err404.html,然后设置404错误页面为err404.html页; 代码如下:<script type="text/javascript" language="javascript"> var id=/(detial|show)\.asp\?id\=([0-9]+)/gi; var flag=/([a-z0-9_]+)\.asp\?flag\=xml/gi; var re_id=/(detial|show)\_([0-9]+)\.html/gi; var re_flag=/([a-z0-9_]+)\.rss/gi; var host='blog.ii-home.cn'; var ss=window.location.href; //ss=ss.replace(window.location.hostname,host...
主要是给用户的友好性,原来用户是依靠搜索引擎进入我每篇文章的,怎么能让用户让一个旧的页面跳转到新的页面,且文章不变,如: 程序代码 //www.gxlsystem.com/blog/article.asp?id=381 //旧网址 进入之后自动跳转到 //www.gxlsystem.com/article.asp?id=381 这就需要new321服务器的404页来处理了,代码如下: 程序代码 <% url=Request.ServerVariables("QUERY_STRING") arr=Split(url,"/blog") '用/分割 ...
我正在通过使用JavaScript来添加< script>来进行跨域JSON(P)调用.标记到具有要作为src包含的URL的DOM.正在加载的脚本具有一个回调,该回调在我的页面上调用一个函数,并且我想要的数据作为该函数的参数返回. 但是有2个捕获点: >有时JSONP页面会返回400或404错误.>可以在同一页面上多次请求同一个JSONP文件(每次返回不同的数据) 因此,我需要检测何时未触发回调函数(这表明JSONP文件返回了错误),但是我还需要考虑一个事实,即同一文件可...
一个简单的酒窝-试图使用Soundcloud的resolve方法来检索专用集的轨道数据的JSON提要. http://api.soundcloud.com/resolve.json?url=http://soundcloud.com/myUser/private-set resolve应返回401未经授权的错误 http://api.soundcloud.com/resolve.json?url=http://soundcloud.com/myUser/private-set&client_id=myClientID resolve返回“ 404”未找到错误.它应该是301重定向到轨道的授权JSON提要,例如文档示例中的http://api.sound...
Socket.io出现连接问题. 这是我的服务器代码:function chatserver(){var express = require('express'),app = express(),server = require('http').createServer(app).listen(app.get('port'),function(){console.log('Express server listening on port '+ app.get('port'));}); var io = require('socket.io').listen(server),users = {};io.sockets.on('connection', function(socket){socket.on('new user', function(data, c...