一 :思路分析

1:用户注册的时候标记推客

2:推客生成分享链接

分享链接构成   (环境前缀+(此链接打开时需要调用的接口+推客的标记+&url=(商品的链接)))

3:需要写一个分享链接调用的接口

当别人根据分享链接下单时  。后端记录推客的标记 ,记录订单来源到cookie  ,跳转链接

下订单时前台读取cookie并传入下单接口写入数据库(推客标记,订单来源)

例:www.taobao.com.cn+/tuike/tranck.aspx?tid=123456(表示一个推客)+&url=产品链接

     public  ActionResult Tranck()
{
string tid=Request.QueryString["tid"].tostring();
string url=Request.QueryString["url"].tostring();
//降tid写入cookie
// 返回url
//下订单时写入数据库
}

二:写入cookie读取cookies

后端添加cookie

   public static string ChannelCID
{
get { return CookiesHand.GetCookie("ChannelCID"); }
set { CookiesHand.SaveCookie(Framework.Config.Domain, "ChannelCID", value, ); }
}
        public static void SaveCookie(string domain, string name, string value, int saveDays)
{
HttpCookie cookie;
HttpRequest request = HttpContext.Current.Request;
HttpResponse response = HttpContext.Current.Response;
cookie = request.Cookies[name];
if (cookie == null)
cookie = new HttpCookie(name);
////指定客户端脚本是否可以访问[默认为false]
//cookie.HttpOnly = true;
////指定统一的Path,比便能通存通取
cookie.Path = "/";
cookie.Domain = domain;
if (saveDays > )
cookie.Expires = DateTime.Now.AddDays(saveDays);
cookie.Value = HttpUtility.UrlEncode(value);
response.AppendCookie(cookie);
}

前端获取浏览器中存在的cookie

document.cookie

根据cookie记录跟踪ID来确定分享对象的更多相关文章

  1. cookie记录用户名

    在说如何用cookie记录用户名之前,我们先来说说cookie的工作原理: cookie : 存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来像访问者电脑上存储数据 ; 1. ...

  2. cookie记录浏览记录

    cookie记录浏览记录 HashMap也是我们使用非常多的Collection,它是基于哈希表的 Map 接口的实现,以key-value的形式存在.在HashMap中,key-value总是会当做 ...

  3. cookie记录用户的浏览商品的路径

    在电子商务的网站中,经常要记录用户的浏览路径,以判断用户到底对哪些商品感兴趣,或者哪些商品之间存在关联. 下面将使用cookie记录用户的浏览过的历史页面.该网站将每个页面的标题保存在该页面的$TIT ...

  4. cookie记录横向滚动条位置

    一.Css <style type="text/css"> #x{ width: 100%; white-space: nowrap; overflow-x: scro ...

  5. JS利用cookie记录当前位置实现刷新页面后还可以保持菜单栏的展开或闭合

    代码如下,重点是JS部分的代码(部分样式引用的是Bootstrapt中的):   <style> .sidebar-menu .special{ font-size: 16px; marg ...

  6. SSM获取表单数据插入数据库并返回插入记录的ID值

    以下指示插入操作以及获取记录值的ID的部分操作代码!!! 首先是简单的表单实现 <%@ page language="java" contentType="text ...

  7. 通过cookie记录,设置页面访问的跳转页

    通过cookie记录,设置页面访问的跳转页 转载自:http://blog.csdn.net/yixiao_naihe/article/details/26679515. 目的: 1.访问fm.htm ...

  8. ThinkPHP框架返回插入记录的id号

    ThinkPHP返回插入记录的id号 $Form->create()) $result = $Form->add(); 在执行上述语句后,若存在auto_increment字段,则可以使用 ...

  9. MyBatis插入数据之后返回插入记录的id

    MyBatis插入数据的时候,返回该记录的id<insert id="insert" keyProperty="id" useGeneratedKeys= ...

随机推荐

  1. springmvc框架原理分析和简单入门程序

    一.什么是springmvc? 我们知道三层架构的思想,并且如果你知道ssh的话,就会更加透彻的理解这个思想,struts2在web层,spring在中间控制,hibernate在dao层与数据库打交 ...

  2. MongoDB、Hbase、Redis等NoSQL优劣势、应用场景

    NoSQL的四大种类 NoSQL数据库在整个数据库领域的江湖地位已经不言而喻.在大数据时代,虽然RDBMS很优秀,但是面对快速增长的数据规模和日渐复杂的数据模型,RDBMS渐渐力不从心,无法应对很多数 ...

  3. functions 示例

    示例1:  ","字符串截取 CREATE OR REPLACE FUNCTION splitstr(p_string IN VARCHAR2, p_delimiter IN VA ...

  4. Confluence 6 配置白名单

    Confluence 管理员可以通过添加 URLs 到白名单选择出入的链接和使用 RSS 宏,HTML 包含宏和小工具中的内容. 如果一个内容被添加到 Confluence 系统中,但是这个 URLs ...

  5. ionic3 极光推送

    参考网站:http://www.jianshu.com/p/eb8ab29329d9 遇到的问题是  执行以下命令一直报错 cordova plugin add https://github.com/ ...

  6. webpack2配置备份

    package.json: { "name": "leyi", "version": "1.0.0", "ma ...

  7. algorithm的基本注意事项

    find(): 返还指向该迭代器的指针,找不到返还last:lnlt find(lnlt first,lnlt last ,const T&val);范围[first,last); list: ...

  8. ubuntu18.04进不了桌面

    ubuntu升级18.04进不了桌面 https://chengfeng.site/2018/05/02/ubuntu%E5%8D%87%E7%BA%A718-04%E8%B8%A9%E7%9A%84 ...

  9. mybatis初始化过程

    mybatis初始化如下: //加载配置文件InputStream resourceAsStream = Resources.getResourceAsStream("testMybatis ...

  10. JS去除空格和换行的正则表达式(推荐)

    //去除空格  String.prototype.Trim = function() {  return this.replace(/\s+/g, "");  }    //去除换 ...