EasyMall第九天

8.17(周期、范围、功能)

  • Cookie:客户端技术,程序把每个用户的数据写到客户端
    小案例:
    1.生成本次访问的时间字符串
    2.先展示上一次访问的时间,再生成新的时间字符串进行存储
    3.使用Cookie:response.setHeader(“Set-Cookie”,data);
    request.getHeader(“Cookie”);
    4.注:第一次访问时注意判null
    API的使用:
    String time = new Date().toLocaleString();
    response.setContent(“text/html;charset=utf-8”);
    //使用Cookie类
    Cookie cookie=new Cookie(String name,String value);//value值不能为空格,解决办法:URLEncoder
    response.addCookie(cookie);
    response.getWrite().write();
    获取cookie数组(只能是数组,然后遍历进行筛选)

    注:如果默认添加一个cookie到session到response中,不附加任何信息
    如果不设置maxAge(/秒),则默认为0,持续时间为浏览器开启到结束

    setPath();如果没有设置,则null传给浏览器,path默认添加为父目录(项目名++)。最好手动设置一下(request.getContextPath+”“)
    getPath();

    域名设置:doMomain();永远不要设定;因为市面上的

    调用程序删除Cookie:判断Cookie的name和path和doMomain是否一致,一致的话进行设置setAge(0)并response.addCookie(cookie);
    删除Cookie原理:将maxAge不为0的Cookie置为0

    记住帐号原理:servlet中(判断是否选中‘记住帐号’【记住: new一个cookie并设置其name=username和value=request.getParameter(“username”)、path=request.getContextPath()、saxAge=3600】【不记住(删除cookie):设置name=username、value=”“、path=request.getContextPath()、saxage=0】);

            jsp中(获取cookie:【cookie==null username="" checked不设置】【cookie!=null username=URLDecoder.decode(cookie.getValue(),"utf-8") 并且将chenked设置为checked】);
    
            注:cookie保存之前或获取之前需编码和解码。
    
  • Session:服务端技术,在服务端开辟一段空间进行存储用户数据,通过Cookie存储id进行身份设置。
    1.域对象
    2.方法:set/get/remove + Attribute() getAttributeName()
    3.生命周期:超时(一般30分钟后)、自杀(session.invalidate())、意外身亡(服务器非正常关闭)
    案例:购物车【物品1->session;物品2->session;物品3->session;…;最后进行全部进行提交】
    HttpSession session = request.getSession(true可填可不填);//有:用 没有:进行创建
    HttpSession session = request.getSession(false);//有:用 没有:返回null
    session不需要addsession,servlet将自动进行提交。

    【Buy中:jsp中禁用session session=“false”(jsp本质是servlet,访问页面是);服务器中 HttpSession session = request.getSession(true可填可不填)】
    【Pay中:HttpSession session = request.getSession(false); 不为null-购物车有东西;为null,购物车没东西;注:支付完将session中数据进行更新!】

  • 解决乱码
    String prod=null;
    if(“GET”.equals(request.getMethod())){
    prod=new String(request.getParameter(“prod”).getBytes(“ios-8859-1”),”utf-8”);
    } else if(“POST”.equals(request.getMethod())){
    request.setCharacterEncoding(“utf-8”);
    prod=request.getParameter(“prod”);
    }

在UniApp中集成微信小程序的订单发货管理,你可以按照以下步骤操作: 1. **引入依赖库**:首先,如果你还没有安装相关插件,可以去uni-app的npm仓库搜索“order management”或“物流管理”的相关组件,如`uni-shop-sdk` 或 `uni-order-sdk`。 2. **注册账号和服务**:如果你打算使用第三方的发货管理服务,如Easymall或者其他电商平台的API,先要在平台上注册并获取开发者账号及API密钥。 3. **配置环境**:在项目中设置相应的环境变量,包括API地址、token等,以方便在小程序中调用。 4. **安装和导入模块**:在小程序的.js文件中,安装并导入所选的物流管理模块,例如: ```javascript import { OrderService } from 'uni-shop-sdk'; ``` 5. **初始化服务**:创建实例并初始化服务,比如: ```javascript const orderService = new OrderService({ // 配置项,如API地址和access_token }); ``` 6. **发送发货请求**:当需要发送订单发货操作时,调用相应的方法,如`shipOrder`,并传入订单ID或其他必要参数: ```javascript await orderService.shipOrder(orderId, { trackingNumber: 'your_tracking_number', carrier: 'express_name' }); ``` 7. **处理回调**:接收服务端的发货状态更新,可以在事件总线或监听特定事件来处理。 8. **展示结果**:在界面上显示发货状态给用户,或者在后台记录发货操作。 9. **测试与调试**:在模拟器或真机上进行测试,确保发货流程正常工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乘风御浪云帆之上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值