温故而知新 前端日志上传新姿势 navigator.sendBeacon(信标)
原文地址:https://mp.weixin.qq.com/s/-moAfEZicrFmun4qfWLdOQ
简单示例js:
var data = JSON.stringify({
name: 'Berwin'
});
navigator.sendBeacon('http://localhost:80/index.php', data)
简单php示例:
由于是信标发送的 POST 请求,并且是 "text/plain" 数据类型,所以适合用 $GLOBALS['HTTP_RAW_POST_DATA'] 接受。
顺便一提,最好不要使用GET方式请求类似: navigator.sendBeacon('http://localhost:80/index.php?a=123') ,不太适合也不是正确的套路。
<?php
header('Access-Control-Allow-Origin:*');
header('Access-Control-Allow-Headers:x-requested-with,content-type');
function WriteLog($msg,$module = null,$logLevel = "DEBUG")
{
$filepath = "./log/";
if(!is_dir($filepath)) mkdir($filepath,'0777');
$MyLogFile = @fopen($filepath.date("Y-m-d").".txt",'a+');
$time = date("Y-m-d H:i:s");
if(isset($module)){$module = sprintf("\r\n归属模块:".$module."\r\n");}
$logLine = "\r\n------------------------------- $time -------------------------------\r\n";
$logLine .= $module;
$logLine .= "\r\n异常信息:$msg\r\n";
$logLine .= "\r\n错误等级:$logLevel\r\n";
fwrite($MyLogFile,$logLine);
}
WriteLog($GLOBALS['HTTP_RAW_POST_DATA']);
温故而知新 前端日志上传新姿势 navigator.sendBeacon(信标)的更多相关文章
- web前端图片上传(3)--filereader
这篇文章主要是为了介绍一种文件上传的方式.当然文件中是包含图片的.如果大家仔细看我的第一篇web前端图片上传(1)就会知道,其实也是按照这种方式上传你的,但是由于上次时间比较紧张,没有详细的介绍今天的 ...
- jq实现前端文件上传
FormData FormData是XMLHttpRequest Level 2 新增的一个接口. 使用FormData可以实现各种文件上传. 使用 // 创建FormData的实例 var form ...
- 七牛云存储的 Javascript Web 前端文件上传
因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,七牛云存储的 Web 前端文件上传 七牛是不错的云存储产品,特别是有免费的配额可 ...
- 前端js上传文件后端C#接收文件
本文粗略的讲下前端文件上传和后端文件接收的原理 前端代码 html <form onsubmit="uploadFile(event)"> <input type ...
- vue+element+oss实现前端分片上传和断点续传
纯前端实现: 切片上传 断点续传 .断点续传需要在切上上传的基础上实现 前端之前上传OSS,无需后端提供接口.先上完整代码,直接复制,将new OSS里的参数修改成自己公司OSS相关信息后可用,如遇问 ...
- 框架基础:ajax设计方案(三)--- 集成ajax上传技术 大文件/超大文件前端切割上传,后端进行重组
马上要过年了,哎,回家的心情也特别的激烈.有钱没钱,回家过年,家永远是舔舐伤口最好的地方.新的一年继续加油努力. 上次做了前端的ajax的上传文件技术,支持单文件,多文件上传,并对文件的格式和大小进行 ...
- Web前端文件上传进度的显示
跟后台关系不大,主要是前端js实现,具体使用了XMLHttpRequest的ProgressEvent事件,可以参考MDN中的Using XMLHttpRequest https://develope ...
- Baidu WebUploader 前端文件上传组件的使用
简介 WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件.在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流I ...
- 前端通信:ajax设计方案(四)--- 集成ajax上传技术 大文件/超大文件前端切割上传,后端进行重组
马上要过年了,哎,回家的心情也特别的激烈.有钱没钱,回家过年,家永远是舔舐伤口最好的地方.新的一年继续加油努力. 上次做了前端的ajax的上传文件技术,支持单文件,多文件上传,并对文件的格式和大小进行 ...
随机推荐
- 使用windbg抓取崩溃文件和分析的过程
在软件编程中,崩溃的场景比较常见的.且说微软技术再牛X,也是会出现崩溃的场景.网上有一段Win98当着比尔盖茨蓝屏的视频非常有意思. (转载请指明出于breaksoftware的csdn博客) ...
- pynput使用简单说明
控制鼠标 from pynput.mouse import Button, Controller import time mouse = Controller() print(mouse.positi ...
- SSM实战——秒杀系统之创建项目、管理依赖、设计数据库
注:本项目使用Myeclipse开发. 一:项目创建 1:使用Myeclipse创建一个web project,命名为MySeckill,并转换为Maven项目. 2:创建项目文件目录如下: 上面四个 ...
- psql 查询表大小
select schemaname,tablename,pg_relation_size(schemaname||'.'||tablename) as tabsize from pg_tables o ...
- Laravel返回不重复的某个字段信息列表
->groupBy('brand_id') ->pluck('brand_id');
- 动态创建radio、checkbox时需要注意的问题
1.给radio.checkbox后面添加文字 2.创建默认选中 3.创建完可选 function create(){ var board = document.getElementById(&quo ...
- Centos7 安装 docker-ce
本文参考官网地址:https://docs.docker.com/install/linux/docker-ce/centos/#os-requirements 1.卸载旧版本的docker $ su ...
- Spark ML 几种 归一化(规范化)方法总结
规范化,有关之前都是用 python写的, 偶然要用scala 进行写, 看到这位大神写的, 那个网页也不错,那个连接图做的还蛮不错的,那天也将自己的博客弄一下那个插件. 本文来源 原文地址:htt ...
- 图片MassiGra045 简体中文|MG
Window自带的图片打开,加载很缓慢.今天推荐一款日本的急速打开图片MassiGra045 简体中文化,简称MG 下载地址: http://pan.baidu.com/s/1qYFgRiW 密码: ...
- C语言的经典排序算法源码
1.插入排序:插入法是一种比较直观的排序方法.它首先把数组头两个元素排好序,再依次把后面的元素插入适当的位置.把数组元素插完也就完成了排序.代码如下: #include<stdio.h> ...