精华内容
下载资源
问答
  • 2017-09-06 19:12:03

    package network.openURL;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.UnsupportedEncodingException;
    import java.net.InetAddress;
    import java.net.InetSocketAddress;
    import java.net.MalformedURLException;
    import java.net.Proxy;
    import java.net.Proxy.Type;
    import java.net.URL;
    import java.net.URLConnection;
    import java.net.UnknownHostException;
    
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.HttpStatus;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.impl.client.HttpClients;
    import org.apache.http.util.EntityUtils;
    
    /**
    * @ClassName: OpenUrl_Proxy
    * @Description:通过代理实现Java代码访问指定URL
    * @date: 2017年8月24日
    * @修改备注:
    */
    public class OpenUrl_Proxy {
    	
    	
       /**
    	* @Description:HttpComponents--HttpClient方式访问指定URL
    	* 通常是因为服务器的安全设置不接受Java程序作为客户端访问,解决方案是设置客户端的User Agent
    	* @date: 2017年8月24日 下午7:45:14
    	* @修改备注:
    	*/
    	public static void openUrl_httpComponents(String url){
            HttpClient client = HttpClients.createDefault();
            HttpGet get = new HttpGet(url);
            try {
                HttpResponse response = client.execute(get);
                int httpStatusCode = response.getStatusLine().getStatusCode();
                //由于一些设置问题,访问百度首页可能返回的httpStatusCode是403,不是200
                //其原因就是可能百度服务器不支持通过代码来调用url
                if(HttpStatus.SC_OK == httpStatusCode){
                    System.out.println("打印服务器返回的状态: " + response.getStatusLine());
                    HttpEntity entity = response.getEntity();
                    if(entity != null){
                        System.out.println("打印返回信息:"+EntityUtils.toString(entity));//打印返回信息
                        //entity.consumeContent();//释放资源
                        EntityUtils.consume(entity);//释放资源 this is the new consume method
                    }
                }else{
                    System.out.println("not ok");
                }
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            client.getConnectionManager().shutdown();
        }
    	
    	
    	/**
    	* @Description:通过添加代理方式,实现访问指定URL
    	* @date: 2017年8月24日 下午8:21:26
    	* @修改备注:
    	*/
    	public static void openUrl_setProxy_1(){
    		InetSocketAddress inetAddress = null;
    		URL url = null;
    		try {
    			url = new URL("http://blog.csdn.net/qq578473688/article/details/77519742");
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    		}
    		try {
    			inetAddress =  new InetSocketAddress(InetAddress.getByName("192.168.80.20"), 8080);
    		} catch (UnknownHostException e1) {
    			e1.printStackTrace();
    		}
            URLConnection con = null;
    		try {
    			con = url.openConnection(new Proxy(Type.HTTP, inetAddress));
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
            BufferedReader br = null;
    		try {
    			br = new BufferedReader(new InputStreamReader(con.getInputStream(), "utf-8"));
    		} catch (UnsupportedEncodingException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
            String str = null;
            StringBuffer sb = new StringBuffer();
            try {
    			while((str = br.readLine()) != null){
    			    sb.append(str);
    			}
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
            System.out.println(sb.toString());
    	}
    	
    	
    	/**
    	* @Description:通过添加代理方式,实现访问指定URL
    	* 通常是因为服务器的安全设置不接受Java程序作为客户端访问,解决方案是设置客户端的User Agent
    	* @date: 2017年8月24日 下午8:22:19
    	* @修改备注:
    	*/
    	public static void openUrl_setProxy_2(){
    		String host = "192.168.80.20"; 
    	    String port = "8080"; 
    	    setProxy(host, port);
    	    URL url = null;
    		try {
    			url = new URL("http://www.baidu.com/");
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    		}
    	    InputStream is = null;
    		try {
    			is = url.openStream();
    		} catch (IOException e) {
    			e.printStackTrace();
    		} 
    	    BufferedReader br = null;
    		try {
    			br = new BufferedReader(new InputStreamReader(is, "utf-8"));
    		} catch (UnsupportedEncodingException e) {
    			e.printStackTrace();
    		}
    	    String line = null; 
    	    try {
    			while ((line = br.readLine()) != null) {
    			    System.out.println(line); 
    			}
    			System.out.println(url.getContent());
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    	}
    	
     
    	public static void setProxy(String host, String port) { 
    	    System.setProperty("proxySet", "true"); 
    	    System.setProperty("proxyHost", host); 
    	    System.setProperty("proxyPort", port); 
    	}     
    
    	
    
    	public static void main(String[] args) {
    		
    	}
    
    }
    


    参考:http://blog.sina.com.cn/s/blog_4b6f8d1501017a5l.html



    更多相关内容
  • 未指定url”属性

    千次阅读 2021-08-09 12:17:19
    'url'attribute isnot specified and no embedded datasource could be configured. 原因: 编译生成target中的classes目录下没有自动生成resources目录中的资源文件。 解决办法: 第一种方式,clean之后,...

    之前能编译通过的文件,莫名其妙就不能运行,并报了以下错误:

     'url' attribute is not specified and no embedded datasource could be configured.

    原因:

         编译生成target中的classes目录下没有自动生成resources目录中的资源文件。

     

    解决办法:

    第一种方式,clean之后,再compile,重新生成target目录。

    第二种方式,选择这个module,鼠标右键-->选择rebuild ,重构这个module。

    第三种方式,把resources目录下的资源手动复制到target的classes目录中。

     

    展开全文
  • java解决限制访问指定url

    千次阅读 2021-04-24 17:36:53
    但从扫描者的角度,一旦他们认为你的后端服务接口暴露的太多,或过于明显,或没有前置的安全措施(通过登录的方式)就能拿到后台的数据,这样显然是不合理的,一旦扫出这样的接口,那么面临的一个问题就是,解决接口...

    前言

    在web项目交付阶段,很多交付的小伙伴们会面临的一个问题就是安全漏洞扫描,关于安全漏洞问题,可以分为很多种,但从扫描者的角度,一旦他们认为你的后端服务接口暴露的太多,或过于明显,或没有前置的安全措施(通过登录的方式)就能拿到后台的数据,这样显然是不合理的,一旦扫出这样的接口,那么面临的一个问题就是,解决接口暴露的问题

    关于这个问题,其实说起来,还是跟系统在一开始的规划设计阶段的安全考虑不够完备,比如你的后台项目是否需要做必要的鉴权,是否集成了第三方安全框架等,如果在项目框架搭建之初,就能考虑到这些问题,相信在后续的交付阶段,就不必担心接口的安全漏洞问题

    但不管如何,一旦出现了,既然不能推倒重来,我们还必须要想办法快速补救,下面就本人在项目交付阶段的一点零碎的经验,针对这个问题,做一点技术实现方案的总结

    方案1:使用过滤器

    这种方式最简单,对大多数程序员来说,也最容易实现,只需要在一个自定义过滤器中,针对所有请求后端服务的url做拦截,对后端所有的URL进行分类,不同的url必须要经过什么样的校验才能通过,这种方式比较简单,就不再做代码层面的展示了

    方案2:使用拦截器

    先贴上代码

    package com.congge.interceptor;
    
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.web.servlet.HandlerInterceptor;
    import org.springframework.web.servlet.ModelAndView;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class MyInterceptor implements HandlerInterceptor {
    
        public static Logger logger = LoggerFactory.getLogger(MyInterceptor.class);
    
        @Override
        public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
            logger.info("执行 preHandle:{}",request.getRequestURI());
            //TODO 这里可以是token,权限等前置业务的处理......
            response.getWriter().write("you have no access");
            return false;
        }
    
        @Override
        public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
            logger.info("执行 preHandle");
        }
    
        @Override
        public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
            logger.info("执行 afterCompletion");
        }
    
    }
    
    
    package com.congge.interceptor;
    
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
    import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
    
    @Configuration
    public class MyWebmvcConfig extends WebMvcConfigurationSupport {
    
        @Override
        protected void addInterceptors(InterceptorRegistry registry) {
            registry.addInterceptor(new MyInterceptor())
                    .addPathPatterns("/user/**", "/admin/**", "/account/**")    //哪些路径要拦截
                    .excludePathPatterns("/open/api/**");                         //哪些逻辑不需要做拦截
        }
    
        /**
         * 静态资源的访问
         * @param registry
         */
        @Override
        protected void addResourceHandlers(ResourceHandlerRegistry registry) {
            registry.addResourceHandler("/static/**")
                    .addResourceLocations("classpath:/static/");
            registry.addResourceHandler("/templates/**")
                    .addResourceLocations("classpath:/templates/");
            super.addResourceHandlers(registry);
        }
    
    }
    
    

    定义一个拦截器,实现HandlerInterceptor接口,在重新的方法中,编写自身校验权限,token等逻辑,如果返回false,请求直接结束,否则可以进入后续的接口资源访问,以文中的配置为例,我们分别访问一下2个接口

    在这里插入图片描述

    在这里插入图片描述
    上面这种方式的改造成本比较小,实现难度也很小,可以作为第一选择

    方案3:集成shiro

    相信很多小伙伴都用过shiro,shiro是一个小巧适用的安全框架,但实际上来说,在和后端项目进行集成时,很多前置的配置工作要做,而且和数据库的权限认证那一套的表结合的很紧密,如果不是在设计之初就集成的话,这个改造的难度和复杂度还是比较大的,慎用

    方案4:集成spring-security

    一听到spring-security,很多同学开始谈虎色变了,spring-security在后端的框架中算是比较复杂,也比较重型的框架了,学习成本是比较高的,但经过本人的研究发现,如果并不打算完全将spring-security的安全体系替换现有的代码逻辑时,可以借助其部分针对接口资源的权限控制功能,完全可以达到本篇问题的目的,下面通过2种方式来快速说明下

    导入security依赖

    		<dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-security</artifactId>
            </dependency>
    

    方式1:直接引用上面的依赖之后,在配置文件中做简单的配置即可

    #手动设置登录用户名和密码
    spring.security.user.name=admin
    spring.security.user.password=admin
    

    引入依赖之后,项目启动之后,访问后端接口时,所有的请求都要经过spring-security的默认登录页面,因此上述配置文件中配置的用户名和密码即为登录的用户名和密码

    当我们再次访问上面的接口时,就会弹出下面的登录页面

    在这里插入图片描述

    输入:root/root,即可正常访问接口了
    在这里插入图片描述
    但这种方式的使用场景比较有限,使用的时候请慎重考虑

    方式2:使用spring-security的安全配置策略

    spring-security集成了很多功能,比如像权限,角色控制等,一般来说,任何系统的登录功能是必不可少的,因此可以借助系统现有的登录登录,再融入spring-security的登录认证即可满足

    实现起来,主要包括如下几点,

    1)自定义UserDetailsService,即实现UserDetailsService接口

    @Configuration("userDetailsService")
    public class MyUserDetailService implements UserDetailsService {
    
        @Autowired
        private UserMapper userMapper;
    
        @Override
        public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
            QueryWrapper<MyUser> queryWrapper = new QueryWrapper<>();
            queryWrapper.eq("username",username);
            MyUser myUser = userMapper.selectOne(queryWrapper);
            if(myUser==null){
                throw new RuntimeException("该用户不存在");
            }
            List<GrantedAuthority> roles = AuthorityUtils.commaSeparatedStringToAuthorityList("role");
            return new User(username,new BCryptPasswordEncoder().encode(myUser.getPassword()),roles);
        }
    }
    

    2)自定义配置类,继承WebSecurityConfigurerAdapter,根据需要重写里面的相关方法即可

    @Configuration
    public class MySecurityConfig extends WebSecurityConfigurerAdapter {

    @Autowired
    private MyUserDetailService userDetailService;
    
    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.userDetailsService(userDetailService).passwordEncoder(password());
    }
    
    @Bean
    public PasswordEncoder password() {
        return new BCryptPasswordEncoder();
    }
    
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.formLogin()
                    .loginPage("/login.html")                       //自定义的登录界面
                    .loginProcessingUrl("/user/login")              //登录提交的接口
                    .defaultSuccessUrl("/zcy/index").permitAll()    //登录成功之后默认的跳转路径
                .and().authorizeRequests()                           //自定义受保护的URL资源
                    .antMatchers("/","/user/login","/open/api/**")
                    .permitAll()                                    //设置那些URL路径可以直接访问,不需要认证
                    .anyRequest().authenticated()                   //除了上面其他的URL资源都受保护
                .and()
                    .csrf().disable();                              //关闭CSRF防护
    }
    

    }

    关于上面的这段配置,相信的使用说明,有兴趣的同学可以参考我的专栏文章:spring-security

    总体的逻辑就是,在自定义的MyUserDetailService 中,完成登录的业务,只有查到访问资源的请求用户存在才会进入到下一步,当然在这个类中,可以结合现有系统的角色,权限体系做进一步的整合,而MySecurityConfig这个类,控制对访问的URL做保护,规定了哪些URL需要走登录认证,哪些可以不用认证等配置信息

    启动项目之后,让我们来做一下测试吧,分别访问一下下面的接口

    http://localhost:8081/open/api/user-info
    http://localhost:8081/account/get/list

    接口1可以直接访问,因为在配置类中对接口直接放行了
    在这里插入图片描述

    访问接口2的时候,弹出了如下的自定义登录页面
    在这里插入图片描述
    在这里插入图片描述
    在数据库中有这样一个用户,我们输入用户名和密码,就可以访问到该接口了
    在这里插入图片描述

    本篇总结了几种常用的限制访问后端URL的方式,希望对看到的小伙伴们有用,本篇到此结束,最后感谢观看!

    展开全文
  • 后台模拟浏览器向指定Url发送post方式的请求数据,这里采用的解决方案是Apache基金会HttpComponents项目,模拟浏览器对服务器发起请求; ​ 2.写个HTML用浏览器模拟发送请求,具体做法是:页面加载函数中绑定submit()自动...

    问题描述:

    项目中遇到一个问题,需要向第三方系统提供的Url地址以post方式发送表单信息来测试接口,这让web经验不足的我犯难了,最后通过分析后拆解问题,找到了两种测试接口的办法;

    问题分析:

    提交表单到指定Url,正常操作是前端写一个按钮,然后点击则会提交表单对象传递给后端;

    <input   type="button"   value="提交" >
    

    这个流程也就是浏览器向服务器的指定资源路径下发送post请求:

    抛去旁支末节,简单来说这个需求就是web开发中最基本的功能实现:用浏览器向服务器发请求

    ​ 所以可以得到解决方案有两种:

    ​         1.后台模拟浏览器向指定Url发送post方式的请求数据,这里采用的解决方案是Apache基金会HttpComponents项目,模拟浏览器对服务器发起请求;

    ​         2.写个HTML用浏览器模拟发送请求,具体做法是:页面加载函数中绑定submit()自动提交form表单到指定Url;

    HttpComponents项目的一些介绍 官网地址:(http://hc.apache.org/);
    Apache开源组织中的HttpComponents,主要是提供对http服务器的访问功能;

    在某些时候可能需要通过程序来访问别人的网页程序,比如从别人的网页中“偷”一些数据。如果对方仅仅是一个很简单的页面,那我们的程序会很简单。但是考虑到一些服务授权的问 题,很多公司提供的页面往往并不是可以通过一个简单的URL就可以访问的,而必须经过注册然后登录后方可使用提供服务的页面,这个时候就涉及到 COOKIE问题的处理。我们知道目前流行的动态网页技术例如ASP、JSP无不是通过COOKIE来处理会话信息的。为了使我们的程序能使用别人所提供的服务页面,就要求程序首先登录后再访问服务页面!再比如通过HTTP来上传文件呢?

    HttpComponents项目就是专门设计来简化HTTP客户端与服务器进行各种通讯编程。通过它可以让原来很头疼的事情现在轻松的解决,例如你不再管是HTTP或者HTTPS的通讯方式,告诉它你想使用HTTPS方式,剩下的事情交给 httpclient替你完成。

    问题解决:

    方案一:使用HttpComponents项目来实现"通过程序来访问服务器资源";

    1.手动创建的项目需要Apache基金会的开源项目 HttpComponents 项目的支持,下载对应的项目版本.我这里使用的是 httpcomponents-client-4.5.12-bin 版本,然后建立项目的jar包依赖;

    2.如果是maven项目,跳过步骤1,直接导入依赖坐标即可

    <dependency>
       <groupId>org.apache.httpcomponents</groupId>
       <artifactId>httpclient</artifactId>
       <version>4.5.12</version>
    </dependency>
    

    3.下面是一个简单的测试类:

    import java.io.InputStream;
    import java.io.UnsupportedEncodingException;
    import java.util.ArrayList;
    import java.util.List;
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;
    import org.apache.http.protocol.HTTP;
    import org.apache.http.util.EntityUtils;
    
    public class HttpComponentsPostTest {
    
        @SuppressWarnings({ "unused", "deprecation" })
        public static void main(String[] args) throws Exception {
            HttpPost post = new HttpPost("http://apis.juhe.cn/simpleWeather/query");
            // 添加参数
            List<NameValuePair> params = new ArrayList<NameValuePair>();
            params.add(new BasicNameValuePair("key", "68d7b52b0e37a602fac910e02d521994"));
            params.add(new BasicNameValuePair("city", "北京"));
            post.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
            // (3) 发送请求
            HttpClient http = new DefaultHttpClient();
            HttpResponse response = http.execute(post);	 
            if (response.getStatusLine().getStatusCode() == 200) {
                HttpEntity resEntity = response.getEntity();
                String message = EntityUtils.toString(resEntity, "utf-8");
                System.out.println(message);
            } else {
                System.out.println("请求失败");
            }
            System.out.println("响应状态信息为"+response.getStatusLine());
        }
    }
    

    运行得到的结果如下,说明响应成功;

    在这里插入图片描述


    方案二:写个HTML用浏览器模拟发送请求,具体做法是:页面加载函数中绑定submit()自动提交form表单到指定Url;

    <!DOCTYPE html>
    <html>
    	<head>
    		<title>测试北京天气的页面</title>
    	</head>
    	
    	<body>
    	
    		<form id="cmbform" action="http://apis.juhe.cn/simpleWeather/query" method="POST" >
    			<input type="hidden" name="key" value="68d7b52b0e37a602fac910e02d521994" />
    			<input type="hidden" name="city" value="北京" />
    		</form>
    		
    		<script type="text/javascript">document.getElementById('cmbform').submit();</script>
    		
    	</body>
    
    </html>
    

    保存后打开该文件,得到如下结果:

    在这里插入图片描述

    同样可以实现对服务器资源路径的请求.

    参考链接:
    https://blog.csdn.net/ethan__xu/article/details/82850989
    https://blog.csdn.net/wjrong_1/article/details/51114233?utm_medium=distribute.pc_relevant.none-task-blog-title-2&spm=1001.2101.3001.4242

    展开全文
  • Ajax指定URL路径不正确的解决办法

    千次阅读 2018-12-05 01:37:53
    今天在写了自己的毕设设计遇到了一个问题,就是提交的地址不是自己在$.ajax中设置的url,但是可以正确回调success。后来在网易博客上看到一位大神的博客瞬间茅塞顿开。才明白主要是因为缓存的问题。这种问题只会子在...
  • git pull push未指定远程branch报错

    千次阅读 2017-11-08 11:46:58
    git pull push未指定远程branch报错 转自:http://www.360doc.com/content/14/0919/10/19315284_410639672.shtml 在高版本的 git下面,也许会看见这样的提示: There is no tracking information for the ...
  • 我们在Windows xp中访问access的时候,...但是在window7 64位系统,是没有办法找到这个驱动的,会报发现数据源名称并且未指定默认驱动程序 这个时候我们需要安装Access的驱动程序,获取地址: 32位:http://do...
  • // 这里是解决中文乱码  prop.put("user", "");  prop.put("password", "");  //String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=" + mdbFile.getAbsolutePath();  String ...
  • 不要勾选“覆盖应用程序根”  
  • 万网域名转向指定URL地址

    千次阅读 2018-01-25 17:13:10
    在万网(阿里云)新申请的域名 , 在域名解析-选择显性/隐性URL-填入URL地址,保存会提示"URL备案异常" 解决方案 : 工具 : 米发(新用户的话是需要注册登录的) http://console.mfpad.com/user/profile 打开米发控制台后,...
  • -- 指定jdk版本,解决编译或打包时出现jdk版本未指定错误 --> <id>custom-compiler</id> <properties> <JAVA8_HOME>D:\Java\jdk1.7.0_80 <JAVA7_HOME>D:\Java\jdk1.8.0_121 <JAVA6_HOME>D:\Java\jdk...
  • 连接Oracle,出现了“ java.sql.SQLException: 指定了无效的 Oracle URL”的错误,但是太晚了,就休息了。刚才在Google上搜索了一下,感觉自己的代码是没有问题的。 DBURL=""jdbc:oracle:thin@127.0.0.1:1521:My...
  • url特殊字符转义及解决方法

    千次阅读 2021-03-05 16:06:23
    )分隔URL和查询4、百分号(%)制定特殊字符5、#号指定书签6、&号分隔参数转义字符的原因:如果你的表单使用get方法提交,并且提交的参数中有“&”等特殊符的话,如果不做处理,在service端就会将&后面的...
  • 在win7用户遇到ie浏览器无法浏览网页,提示您所请求的网址(url)无法获取,碰到这样的问题该如何处理呢,接下来随win7之家小编一起来看看具体的1、网络设置的问题这种原因比较多出现在需要手动指定IP、网关、2、DNS...
  • URL 代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,也就是我们常说的域名、浏览器访问地址。 在Java中就是使用URL访问网络资源,获取...
  • 我的情况是本机无法通过url访问阿里云购买的虚机(可以ping通),遇到的原因与解决方法供大家参考: 关闭windows的防火墙 查看服务器的防火墙是否开启(CentOS7系统) systemctl status firewalld 如果防火墙是...
  • 异常信息:无效的 URI: 指定的端口无效 今天做文件下载到流时,WebRequest.Create(url)一直报错:无效的 URI: 指定的端口无效,搞了两个小时没整好!...解决办法:最后把这个URL.replace("\\","/"),再WebRequ...
  • URL中传递中文的解决方式

    万次阅读 2018-10-30 17:28:55
    URL中传递中文的解决方式 2015年05月13日 17:13:55 thinkinglink 阅读数:10321 标签: URL编码中文编码乱码解决 更多 个人分类: web前端 在URL中传递中文的解决方式 1.第一种方式,主要是通过配置搞定...
  • 希望官方开发文档中解决方案可以收纳。造福大家,气死微信哈哈 给个动态图自己看:  以上方法只是用PHP做的一个header头部响应为PDF下载文件,例如JAVA,.NET,Python等都可以的。主要就是让服务端返回一个PDF下载...
  • SpringBoot上传图片到指定位置,并返回URL

    千次阅读 多人点赞 2020-04-01 15:23:43
    windows临时文件夹: windows的临时文件夹位置: C:\Users\User\AppData\Local\Temp Linux的临时文件夹位置: /tmp 2、解决方案(4种): (1)用图片服务器。。。。。。(我不会。。。) (2)将SpringBoot项目打...
  • 关于python中selenium获取不到跳转页面的当前url或是HTML问题解决 问题详述: 在selenium爬取带有js渲染的网页时,当某些网页点击跳转新的标签页后,通过采用url = browser.current_url来获取当前点击跳转后页面...
  • 项目中有一个接口是用GET方法接收参数的,测试的时候发现当URL的参数中出现 + 号的时候,传到后端 + 号全都变成了空格了。 然后从网上找到了原因:URL参数中是不能出现+ % # & = ? /等特殊字符的,因为这些字符...
  • 当我们多次访问同一个页面,如果url都...解决办法在url后面加一个timestamp时间戳,保证每次的url都是变化的,这样就不会读取浏览器缓存了。 以servlet为例,加入我们重定向一个路径:Timestamp time = new Timestamp
  •  这是什么问题,该如何解决,网络一切正常,端口号也正确 <p><img alt="" height="635" src="https://img-ask.csdnimg.cn/upload/1616037394037.png" width="1231" /></p>
  • 使用ie浏览器,当get请求访问url中含有中文时,就会返回404. 为什么firfox和chrome就没有这个问题呢? 对比后你会发现浏览器地址栏中firfox和chrome把中文都转换成了%E....什么的东西,然后copy到ie也能正常访问了. 这...
  • 在做项目时,遇到需要做路由跳转,但是用户输错了URL地址,或者其他非法URL路由地址,我们可能会跳转到404页面,不管你有没有写一个404页面,当出现匹配路由都需重新指定页面跳转。我们首先想到的一定会是路由...
  • cas登陆成功跳转url参数client-host-url指定失效问题 问题场景: nginx 地址:http://localhost/ 端口80; tomcat 应用app1 地址http://localhost:8081/app1 spring boot \ cas 4.2.7 用户通过nginx反向代理访问 ...
  • 网站url后带spm参数的作用

    千次阅读 2021-01-13 18:42:43
    SPM(super position model 超级位置模型) 跟Google Analytics在URL里面拼上utm_source, utm_medium等参数大同小异。 思路和原理 先来看几个问题 1.如何统计某个页面的pv呢? 一种思路是直接统计服务端nginx请求...
  • HTML5为history对象添加了两个...都会改变浏览器标签栏中的URL值,区别在于pushState()会将之前的地址记录在history对象中,通过back()可以返回前一页,replaceState()则不能返回  我用到的是history.replaceState...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 476,971
精华内容 190,788
关键字:

怎么解决未指定的url