现象:
- 录音拨号未发现录音信息
处理:
- 查看ajax函数返回值,录音拨号之后未获取到相关文件信息
- 也即是直接使用ajax请求数据,接收到的数据为空
- 控制台打印信息:Cross-Origin Read Blocking (CORB) blocked cross-origin responsehttp://192.168.66.3:8080/startdialpassive?channelno=12&telephoneno=10086with MIME type text/plain. Seehttps://www.chromestatus.com/feature/5629709824032768for more details.
- 使用封装的senData函数发送请求,请求了两次
- 录音拨号时单独地址访问能够获取到信息
- 重新安装浏览器工具Orign之后未再报Cross-Origin提示信息
分析:
- 返回值不正常,可能是硬件或者其他操作问题,也可能是前端代码问题。
- 同上,先从前端入手
- 首先,跨域问题,考虑到之前能正常工作,然后出现跨域问题,直接入手浏览器跨域工具,搜索不到可能是过期了,从新下载了一个相关工具。然而得到的结果是没有打印跨域信息仍然访问不到数据
- 使用senData函数方式访问,发送两次请求;
这是因为浏览器对复杂跨域请求的处理,在发送真正的请求前, 会先发送一个方法为OPTIONS的预请求(preflight request), 用于试探服务端是否能接受真正的请求,如果options获得的回应是拒绝性质的,比如404403500等http状态,就会停止post、put等请求的发出。
三种方式可能引起此种情况:a.请求方法不是GET/HEAD/POST
b.POST请求的Content-Type并非application/x-www-form-urlencoded,multipart/form-data,或text/plain
c.请求设置了自定义的header字段 - 录音拨号时单独访问能够获取到数据信息
预想:
- 可能录音拨号单独地址访问是偶然情况,操作失误,排除方式:查看控制台打印信息
- 可能是由于ajax请求配置问题,排除方式:重写ajax配置
- 可能是由于跨域问题仍未解决...(虽然重新安装浏览器工具Orign之后未再报Cross-Origin提示信息)
处理:
- 拨号,看控制台是否打印信息
- 拨号,看直接访问链接是否打印信息
- 拨号,切换ajax访问方式,以script获取callback方式测试看是否能获取数据值(jsonp)
- 浏览器安装新工具:Moesif Orign & CORS Changer,拨号
结果:1-3失败,4成功,跨域工具失效问题
猜想:
- 安装浏览器跨域工具是否具有安全性等负面问题
- 同源问题提示 提示(黄色字体) 和 错误(红色字体)有何区别?(如下两图)
- 跨域问题,若无法有相应后台配合,例如此次的拨号录音,那么是否就无法解决了
黄色字体同源提示
红色字体同源提示
相关文章:
软件文档归类汇总
java aes加密_行走江湖,安全第一 | 尚硅谷Java安全密码学教程发布!
今天是最后的悠闲。
kernel编译 openwrt_OpenWRT实践3:Click Modular Router
关于Mercurial(Hg)
python异常处理机制_错误处理
十进制浮点数的表示方法
python工作可以做什么菜_python3 特色菜
Evolution3D 的svn搬迁。
python网络自动化实例_python 自动化之路 day 08_2 网络编程
新年了。今年Evolution3D要做的事
python组合数计算cmnn_求计算机大佬解答python题
hex字符串转byte数组 c_高频golang面试题:字符串转成byte数组,会发生内存拷贝吗?
程序员考核的五大死因(上)
html怎么做图片自动轮播_自动果蔬售卖机作为载体的社区新零售怎么做?
@angular/forms 源码解析之双向绑定
[Vue CLI 3] 配置解析之 css.extract
Apache的80端口被占用以及访问时报错403
Cumulo 的 ClojureScript 模块已经成型
docker容器内的网络抓包
Javascript设计模式学习之Observer(观察者)模式
Linux编程学习笔记 | Linux多线程学习[2] - 线程的同步
Netty 框架总结「ChannelHandler 及 EventLoop」
nginx 配置多 域名 + 多 https
Phpstorm怎样批量删除空行?
zookeeper系列(七)实战分布式命名服务
道格拉斯-普克 抽稀算法 附javascript实现
复习Javascript专题(四):js中的深浅拷贝
融云开发漫谈:你是否了解Go语言并发编程的第一要义?
如何正确配置 Ubuntu 14.04 服务器?
深入浅出webpack学习(1)--核心概念
想使用 MongoDB ,你应该了解这8个方面!
智能合约Solidity教程-事件和日志(一)
iOS安全加固方法及实现
(22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
(C语言)求出1,2,5三个数不同个数组合为100的组合个数
(JS基础)String 类型
(四) 虚拟摄像头vivi体验
(算法)Travel Information Center
(转)jdk与jre的区别
*++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
./configure、make、make install 命令
.net MySql
.net 验证控件和javaScript的冲突问题
.Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)
[ C++ ] STL---仿函数与priority_queue
[ linux ] linux 命令英文全称及解释
[20190401]关于semtimedop函数调用.txt
[ASP.NET MVC]如何定制Numeric属性/字段验证消息
[CISCN2019 华北赛区 Day1 Web5]CyberPunk --不会编程的崽
[CISCN2021 Quals]upload(PNG-IDAT块嵌入马)
[C语言]——内存函数
[Deep Learning] 神经网络基础
[Everyday Mathematics]20150130
[ffmpeg] x264 配置参数解析