专门做二手的网站,建设网站只,新手建站,佛山营销网站设计面试 Java 基础八股文五问五答第六期 作者#xff1a;程序员小白条 相信看了本文后#xff0c;对你的面试是有一定帮助的#xff01;
⭐点赞⭐收藏⭐不迷路#xff01;⭐
1#xff09;什么是跨域#xff1f;
跨域问题是指在浏览器中#xff0c;由于同源策略的限制程序员小白条 相信看了本文后对你的面试是有一定帮助的
⭐点赞⭐收藏⭐不迷路⭐
1什么是跨域
跨域问题是指在浏览器中由于同源策略的限制不同域名、不同端口或不同协议之间的页面无法直接进行数据交互。换句话说当一个页面的脚本试图访问另一个域的资源时就会出现跨域问题。
2跨域问题怎么解决
1JSONPJSON with Padding利用script标签的src属性不受同源策略限制的特性通过动态创建script标签将要获取的数据作为参数传递给服务器服务器将数据包装在回调函数中返回给客户端。
2CORSCross-Origin Resource Sharing通过在服务器端设置响应头允许指定的域名访问资源。服务器可以在响应头中添加Access-Control-Allow-Origin字段指定允许访问的域名。
3代理服务器在同源策略下服务器端没有跨域限制可以通过在服务器端设置代理将客户端的请求转发到目标域名上然后将响应返回给客户端。
3设计接口要注意什么
1接口的设计要符合RESTful风格合理命名和划分资源使用HTTP动词表示对资源的操作。
2接口的参数要合理设计遵循最小化原则只传递必要的参数避免冗余和不必要的数据传输。
3接口的返回结果要统一规范使用合适的HTTP状态码表示请求的结果返回的数据格式要统一建议使用JSON格式。
4过滤器和拦截器的区别
过滤器和拦截器是Web开发中常用的两种组件它们的作用是在请求到达控制器之前或之后进行处理。
过滤器是在Servlet容器中定义的组件可以对请求进行预处理和后处理。过滤器可以对请求进行拦截修改请求或响应的内容以实现一些通用的功能如身份验证、日志记录、编码转换等。
拦截器是在Spring框架中定义的组件它基于AOP面向切面编程的思想可以对请求进行拦截和处理。拦截器可以更加灵活地定义拦截的范围和逻辑并可以通过注解、注入等方式方便地与其他组件进行集成。
5对接第三方接口要考虑什么
1了解第三方接口的文档和要求包括接口的URL、请求方法、参数、返回结果等。
2根据第三方接口的要求进行接口的鉴权和认证包括生成签名、获取访问令牌等。
3处理第三方接口的异常情况如网络超时、请求失败等需要进行适当的重试和错误处理。
4对第三方接口的请求和响应进行合理的日志记录方便排查问题和追踪数据。
5考虑第三方接口的并发性和性能合理设置超时时间和连接池等参数避免请求阻塞和资源浪费。