jsonp 监控简陋代码
url: window.location.href
Agent: navigator.userAgent
var tkInfo = {
VisitUrl: window.location.href,
UserAgent: Visit.Agent,
SolutionCatalogId: Visit.SolId
}
$.ajax({
url: _urlBase + "/Track/AddTrackInfo",
data: { jsonData: JSON.stringify(tkInfo) },
type: 'get',
jsonp: "jsonpcallback",
success: function (data) {
console.log(data);
}
})
using (MSDBcontext db = new MSDBcontext())
{
string result = String.Empty;
//服务端获取IP地址
result = HttpContext.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (string.IsNullOrEmpty(result))
{
result = HttpContext.Request.ServerVariables["REMOTE_ADDR"];
}
if (string.IsNullOrEmpty(result))
{
result = HttpContext.Request.UserHostAddress;
}
var tkInfo = new TrackInfo
{
UserId = trackInfo.UserId,
FromId = Guid.Parse(trackInfo.FromId),
FromUserId = trackInfo.FromUserId,
VisitorName = trackInfo.VisitorName,
VisitUrl = trackInfo.VisitUrl,
UserAgent = trackInfo.UserAgent,
VisitorIP = Request.UserHostName,
}
return JavaScript(string.Format("{0}({1});", jsonpcallback, Newtonsoft.Json.JsonConvert.SerializeObject(jsonResult)));
//自增
db.Database.ExecuteSqlCommand("UPDATE TrackSta SET ShareCount=ShareCount+1 WHERE Id = {0};", tStaInfo.Id);
string str="select YEAR(CreateTime) as Y,month(CreateTime) as M,day(CreateTime) as D,datepart(Hour,createtime) as H, COUNT(*) as C,sum(case IsPay when 0 then 1 when 1 then 0 end ) as 'UnPay', sum(case IsPay when 1 then 1 when 0 then 0 end) as 'Pay' from orders where YEAR(CreateTime)='2015' group by YEAR(CreateTime),month(CreateTime),day(CreateTime), datepart(Hour,createtime)";
var v =db.Database.SqlQuery(typeof(OrderChart), str, "");
3.json 格式 对应
$.ajax({
url: _BaseUrl + '/Video/GetLoadVideoData',
type: 'post',
datatype: 'json',
data: {},
success: function (data) {
if (data != null) {
//常规了解
if (data.Data.RoutineDataList.length > 0) {
}
}}
}
public ActionResult GetLoadVideoData(string type)
{
AjaxResult<LoadVideoData> result = new AjaxResult<LoadVideoData>
{
Status = -1, Message = "获取失败。",
Data = new LoadVideoData
{ CaseDataList = null, ServiceDataList = null, RoutineDataList = null, TrainDataList = null } }; using (AzureWeChatDbContext context = new AzureWeChatDbContext()) { var routineDataList = context.Database.SqlQuery<VisitDataListModel>("exec GetRoutineDataList").ToList(); var serviceDataList = context.Database.SqlQuery<VisitDataListModel>("exec GetServiceDataList").ToList(); var caseDataList = context.Database.SqlQuery<VisitDataListModel>("exec GetCaseDataList").ToList(); var trainDataList = context.Database.SqlQuery<VisitDataListModel>("exec GetTrainDataList").ToList(); //var LecturerDataList = context.Database.SqlQuery<VisitDataListModel>("exec GetLecturerDataList").ToList();
result.Data.CaseDataList = caseDataList; result.Data.ServiceDataList = serviceDataList; result.Data.RoutineDataList = routineDataList; result.Data.TrainDataList = trainDataList; result.Status = 1; result.Message = "获取成功"; } JsonResult jsonData = new JsonResult { Data = result, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; return jsonData; }
jsonp 监控简陋代码的更多相关文章
- 五个常用的Linux监控脚本代码
bash中 2>&1 & 的解释 1.首先,bash中0,1,2三个数字分别代表STDIN_FILENO.STDOUT_FILENO.STDERR_FILENO,即标准输入(一般 ...
- Jsonp理论实例代码详解
什么是Json?JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - ...
- Fundebug发布Vue插件,简化BUG监控接入代码
摘要: 代码越短越好! 我们发布了fundebug-vue插件,可以简化Vue框架接入Fundebug的代码. Vue如何接入Fundebug 1. 安装fundebug-javascript与fun ...
- 利用StopWatch类监控Java代码执行时间并分析性能
springframework中的StopWatch类可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间.一般用来测量代码执行所用的时间或者计算性能数据,在优化代码性能上可以使用Sto ...
- 关于supervisor无法监控golang代码的解决方法
之前一直都是使用如下方式运行go代码 # go run test.go 这种运行方式是直接编译运行go代码,虽然在调试的时候没出什么问题,但是在使用supervisor监控的时候,会提示如下错误:(b ...
- 【不积跬步,无以致千里】五个常用的Linux监控脚本代码
为大家提供五个常用Linux监控脚本(查看主机网卡流量.系统状况监控.监控主机的磁盘空间,当使用空间超过90%就通过发mail来发警告.监控CPU和内存的使用情况.全方位监控主机),有需要的朋友不妨看 ...
- jsonp原生js代码示例
/* mightygumball.js */ /* * get the content of a JSON file using JSONP * update every 3 seconds. * * ...
- python语言(三)文件修改、函数、json操作、监控日志代码、高效读取文件
1.文件操作(2) 代码 f = open('a.txt','a') # "a" 如果源文件不在,会自动创建 f.write('abc') result = f.read() ...
- StopWatch 监控Java代码运行时间和分析性能
背景 有时我们在做开发的时候需要记录每个任务执行时间,或者记录一段代码执行时间,最简单的方法就是打印当前时间与执行完时间的差值,然后这样如果执行大量测试的话就很麻烦,并且不直观,如果想对执行的时间做进 ...
随机推荐
- tyvj1045 最大的算式
描述 题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大.因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有一个符号.例 ...
- CentOS7下搭建postfix邮箱服务器并实现extmail的web访问
http://blog.51cto.com/zero01/2064693 https://blog.csdn.net/a5nan/article/details/52510887
- 动态替换logback FileAppender/RollingFileAppender 配置- Programmatically configure logback FileAppender/RollingBackAppender
一.本文实际解决的问题 如何在代码中修改logback的RollingFileAppender配置(本文代码实例为修改日志文件路径) 二.针对的场景: 本文解决的问题属于一个大需求的一部分,需求为:需 ...
- MongoDB小结11 - update【save】
save是一个shell函数,调用它,可以在文档不存在时插入,存在时更新,它只有一个参数:文档.如果文档有 _id 这个 键,那么save会调用upsert,否则会调用insert,非常方便.
- guava cache学习
Guava Cache与ConcurrentMap很相似,但也不完全一样.最基本的区别是ConcurrentMap会一直保存所有添加的元素,直到显式地移除.相对地,Guava Cache为了限制内存占 ...
- react的类型检查PropTypes自React v15.5起已弃用,请使用prop-types
最近使用React的类型检查PropTypes时,遇到错误:TypeError: Cannot read property 'array' of undefined 看了下自己的React版本: ...
- vsftpd.conf案例
1. 匿名服务器的连接(独立的服务器) 在/etc/vsftpd/vsftpd.conf配置文件中添加如下几项:Anonymous_enable=yes (允许匿名登陆)Dirmessage_enab ...
- 8.跟我学solr---UpdateRequestProcessor具体解释
简单介绍 java web开发的同学应该非常熟悉,在开发中常常会使用filter来处理请求中的一些切面需求. solr也提供类似的一种链式结构的handler来满足在加入数据索引请求的时候.通过切片的 ...
- CSS和JS结合控制样式
CSS控制样式,毋庸置疑.但有时,仅靠CSS却很难控制好,比如说,页面在多种条件下进行不同的呈现:或者运行过程中,会发生变化,比如说,左侧的菜单栏收缩了,那么右侧的宽度就变大了. 就拿这个元素的wid ...
- 20170626_oracle_数据库设计
数据库设计的定义:规划数据库中数据对象以及之间关系的过程. 为什么进行数据库设计? 空间 完整性 程序开发 数据库设计前提知识: 范式: 1NF:第一范式 第一范式的目标是确保每列的原子性 如果每列都 ...