精华内容
下载资源
问答
  • ajax数据和图片(base64格式)

    万次阅读 2016-07-24 22:48:14
    讲了一下ajax的用法(原生js版),以及如何在前端获取图片,以base64的形式用ajax给后台,和后台解析图片保存。 感觉自己写的还是挺通俗易懂的~

    最近在写网站,作为一个热衷原生js的程序员,我坚决不肯入伍jq(虽然在老师的胁迫下也学习了)

    用ajax提交的,后台原生的PHP

    搞了几天,总算没白搞。

    现在十点多了,我还在搞,应该早点睡觉。

     

    XMLHttpRequet的用法(js版)

     

    var xmlhttp;
    function uploadData()
    {
    	// 这个支持新的浏览器
    	if (window.XMLHttpRequest)
    	{
    		xmlhttp = new XMLHttpRequert();
    	}
    	// IE5 IE6 老版本浏览器
    	else if (window.ActiveXObject)
    	{
    		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    	}
    	if  (xmlhttp != null)
    	{
    		var url = "text.php";
    		// 这里拼接下要传送的data 格式如下
    		var data = "name1=name1&name2=name2&name3=name3";
    		// 这里赋一个自定义的state_Change的方法 当状态改变的时候会调用 注意这里没有括号 有括号的那不是函数 而是函数的返回值
    		xmlhttp.onreadystatechange = state_Change;
    		// 这个ture是异步
    		xmlhttp.open("POST", url, ture);
    		// POST需要设置这个 GET不用
    		xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    		// 如果你用GET方法 直接xmlhttp.send(); data直接拼接 ? + data在url后面就可以
    		xmlhttp.send(data);
    		}
    	}
    }

     

     

     

     

     

     

    后台那边

     

    // 我用的utf-8
    header("Content-Type:text/html; charset=utf=8");
    $arr = $_GET;
    // 打印数组
    foreach ($arr as $k => $v)
    {
    	echo $k."=>".$v."\n";
    }

     

     

     

    这个很简单 就是之前我的服务器没搭好(mac下设置比windows麻烦好多好多好多……) 所以一直没接到POST数据 被折磨了一段时间才知道是这个问题……

    下面讲讲图片

    我喜欢用base64来传,好处太多了(自己研究去吧)

    思路就是用input获取图片,用FileReader读取图片为base64,然后ajax到后台,再存成图片

    这里写下最简单的代码

    老师说 正规项目不能这么取名哦 一定要贴切有实际意义(但我管他呢 边呆着去= =)

     

    var input = document.getElementById("input");
    var reader = new FileReader();
    reader.readAsDataURL(input.files[0])
    reader.onload = function (evt)
    {
    	var base64 = reader.result;
    	// 重点来了 ajax在传输过程中 加号会变成空格 base64里是有加号的我不幸掉进了这个坑……
    	// 把+替换成编码 %2B是加号的编码
    	var newBase64 = base64.replace(/\+/g, "%2B");
    	然后就可以按照上面那个方法发给服务器端了
    }

     

     

     

     

    服务器端处理

    如果你没有限制图片类型 需要截取字符自己判断下是什么类型的图片(比如jpeg还是png)

     

    $base64 = $_POST['newBase64'];
    // png格式
    //  把头掐了
    $image = base64_decode(str_replace('data:image/png;base64,' '', $base64));
    file_put_contents('text.png'', $image);
    //jpeg
    $image = base64_decode(str_replace('data:image/jpeg;base64,' '', $base64));
    file_put_contents('text.jpg'', $image);
    // 其他图片格式请自行脑补

     

     

     

    2016年7月24日

    黑骐

     

     

     

    展开全文
  • 我前台用json格式将数据到后台,但是我返回的数据是一个地址,我想将这个地址放在固定的div上,但是json格式没法获得地址页面的数据,我想知道如何转换格式,应该转换成什么格式
  • 与新的后端人员对接接口时发现来的时间戳格式与往常的不同,之前都是long 形式过来,这次却以string形式过来,商讨无果后觉得让改还不如自己转算了。特地在此记录一下,谨防忘记 因为在很多地方都引用,...

    与新的后端人员对接接口时发现传来的时间戳格式与往常的不同,之前都是long 形式传过来,这次却以string形式传过来,商讨无果后觉得让他改还不如自己转算了。特地在此记录一下,谨防忘记

    因为在很多地方都引用,所以为了方便,直接在vo中做转换:

    private String activityStartTime;//活动开始时间
    
    public String getActivityStartTime() {
        return switchCreateTime(activityStartTime);
    }
    
    public void setActivityStartTime(String activityStartTime) {
        this.activityStartTime = activityStartTime;
    }
    
    public String switchCreateTime(String createTime) {
        String formatStr2 = null;
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");//注意格式化的表达式
        try {
            Date time = format.parse(createTime );
            String date = time.toString();
            //将西方形式的日期字符串转换成java.util.Date对象
            SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", java.util.Locale.US);
            Date datetime = (Date) sdf.parse(date);
            //再转换成自己想要显示的格式
            formatStr2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(datetime);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return formatStr2;
    }

    目前先这样写,如果有更好的方法,再进行更新优化。

    展开全文
  • 前端来json格式的数据传递而来,如何处理json格式的数据,如何将其转化为对象方便进行操作,并在Servlet页面中将数据以对象形式输出 先放个postman测试的结果 Servlet的代码 @WebServlet("/Servlet") public ...
    我是小康小白,一个平平无奇的Java小白。热爱有趣的文字,生活和远方。
    

    在这里插入图片描述

    前端传来json格式的数据传递而来,如何处理json格式的数据,如何将其转化为对象方便进行操作,并在Servlet页面中将数据以对象形式输出

    先放个postman测试的结果

    在这里插入图片描述

    Servlet的代码

    @WebServlet("/Servlet")
    public class Servlet extends HttpServlet {
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
            // 响应参数格式设置
            response.setCharacterEncoding("UTF-8");
            response.setContentType("text/html;charset=UTF-8");
    
    
            //将此字符串对象输出
            PrintWriter out=response.getWriter();
    
            //使用IOUtils的读取包方式
    //        BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream()));
    //        String body = IOUtils.read(reader);
    
            //使用InputStreamReader对象,获取前端传来的数据.其中
            // request.getInputStream()是读取前端传递来的数据字节流,
            // StandardCharsets.UTF_8是将前端传来的数据转化为UTF-8的编码方式
            InputStreamReader insr = new InputStreamReader(request.getInputStream(), StandardCharsets.UTF_8);
            StringBuilder body = new StringBuilder();
            int respInt = insr.read();
            while(respInt!=-1) { // 读取请求数据
                //将读取的字节流中的每一个字节转化为字符,然后添加到StringBuilder类型的对象中
                body.append((char) respInt);
                respInt = insr.read();
            }
    
    
            //out的print方法可以输出对象
            out.print(body);
            JsonChange jsonChange = new JsonChange();
            //将StringBuilder类型的对象的对象通过toString方法转化为String类型,然后用fastjson的json包进行转化
            User user = jsonChange.JsonChangeJavaObject(body.toString());
    
            out.write(user.toString());
    
            //将int类型的变量转化为String类型
            String userPrasisepoints = String.valueOf(user.getPrasisepoints());
            String userPageview = String.valueOf(user.getPageview());
    
    
            SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            String dateString = formatter.format(user.getTime());
            out.write(user.getUsername()+'\n');
            out.write(user.getP_headline()+'\n');
            out.write(user.getP_content()+'\n');
            out.write( userPrasisepoints);
            out.write('\n');
            out.write( userPageview);
            out.write('\n');
            out.write(dateString);
    
    
    
    
    //        out.write(body);
    
        }
    

    至于从postman获取json数据,如何进行简单输出可以看我的另一篇博客如何接收前端传来的json数据

    但这篇博客中仅仅是实现了从前端获取json数据包,然后进行简单输出,无法获得将数据传递给相应的对象。

    这里需要对json数据进行解码。

    笔者在这里使用的是fastjson的jar包,下载地址提取码: vqwd。具体代码如下
    在这里插入图片描述
    下面是笔者对应的成员类

    package YunNotes.users_publicnotes.entity;
    
    import java.util.Date;
    
    import com.alibaba.fastjson.*;
    
    /**
     * 此类中包换所有用户信息,包括:username:用户名;
     *                           p_headline:公开笔记的标题;
     *                           p_content:公开笔记的内容;
     *                           prasisepoints:点赞数;
     *                           pageview:页面浏览量;
     *                           time:笔记的发布时间;
     *                        以及以上类的getter()方法和setter()方法;
     *                        这是主类,包含最多;
     * @author 10593
     */
    public class User {
    
        private String username;
        private String p_headline;
        private String p_content;
        private int prasisepoints;
        private int pageview;
    
    
        private Date time;
    
        public User(){
    
        }
    
        public String getUsername() {
            return username;
        }
    
        public void setUsername(String username) {
            this.username = username;
        }
    
        public String getP_headline() {
            return p_headline;
        }
    
        public void setP_headline(String p_headline) {
            this.p_headline = p_headline;
        }
    
        public String getP_content() {
            return p_content;
        }
    
        public void setP_content(String p_content) {
            this.p_content = p_content;
        }
    
        public int getPrasisepoints() {
            return prasisepoints;
        }
    
        public void setPrasisepoints(int prasisepoints) {
            this.prasisepoints = prasisepoints;
        }
    
        public int getPageview() {
            return pageview;
        }
    
        public void setPageview(int pageview) {
            this.pageview = pageview;
        }
    
        public Date getTime() {
            return time;
        }
    
        public void setTime(Date time) {
            this.time = time;
        }
    
    
        @Override
        public String toString() {
            return "User{" +
                    "username='" + username + '\'' +
                    ", p_headline='" + p_headline + '\'' +
                    ", p_content='" + p_content + '\'' +
                    ", prasisepoints=" + prasisepoints +
                    ", pageview=" + pageview +
                    ", time=" + time +
                    '}'+'\n';
        }
    
    }
    
    

    代码中需要注意的地方(笔者之前踩过的坑)

    1.如果测试时获取的json格式的数据包进行输出时出现了中文乱码,此时需要修改tomcat的编码方式。

    idea的修改方式如下
    在这里插入图片描述

    2.如果日期类型的格式不正确,可以向其中添加下面相应的代码进行修改

    在这里插入图片描述

     		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            String dateString = formatter.format(user.getTime());
    
    展开全文
  • m3u8格式转成MP4以及可播放格式

    万次阅读 2019-04-26 16:29:08
    今天看数学视频的时候想把视屏分享给小伙伴,但是当我将视屏发给我的小伙伴的时候发现原本200多MB的视屏只有几K大小,这有点像我们小时候从电脑上拷贝游戏都只是拷贝一个快捷方式一样。 为什么的时候只有...

           前文:已经好几个月没有写博客了,因为在忙于复习高等数学。今天看数学视频的时候想把视屏分享给小伙伴,但是当我将视屏发给我的小伙伴的时候发现原本200多MB的视屏传给他只有几K大小,这有点像我们小时候从电脑上拷贝游戏都只是拷贝一个快捷方式一样。

           为什么传的时候只有几k呢?第一时间我就想到肯定是视屏的存储路径不对,但是点开文件详情的时候发现“没有错啊,就是这个文件啊”,随后,我的目光注意到了这个视屏文件的格式.m3u8.....等等这是什么格式???百度了一番后发现,这个m3u8将视频或音频流分片,并建立m3u8格式的索引。简单的说就是将视屏分成一片一片,类似我们作ppt一样

         上图就是这个教学视频m3u8的分片流。

          那如何找到这个分片流呢?

          ①我们用记事本打开带有m3u8格式的视屏文件

          ②接着我们找到文件地址(这个文件地址有一个特点就是文件名是一样的)

          ③复制这个地址,然后用文件检索功能找到该文件,双击打开它 [如下图]

        我们从图片可以看出这个文件夹里面的文件是由若干个xx.ts的文件组成,我们下一步就是要将这若干个xx.ts的文件按顺序排列然后组成一个大的xxx.ts文件。步骤如下:

          ①先将文件排序

          ②打包这个一个大的xxx.ts文件有很多种方法,这里教大家一个最简单的方法。我们按顺序选中xx.ts文件,然后右键点击添加到压缩文件形成压缩包的形式,记住压缩形式为存储

                                                          

         ③压缩的时间根据电脑性能而定,最后一步我们将压缩好的文件的格式改成xxx.MP4就可以用播放器观看了。

                                                         

     

         

    展开全文
  • 一般服务器给客户端的数据格式是json 。然后这个是js触发之后,服务器过来的,据说没有jsonformat。。。。 然后就是这个东东: 直接打印或者强转并不行,需要转成dictionary来解析,toDictionary 这个方法是...
  • 三、格式化字符串漏洞 原文:Exploiting Format String Vulnerabilities 作者:scut@team-teso.net 译者:飞龙 日期:2001.9.1 版本:v1.2 格式化字符串漏洞的通常分类是“通道问题”。如果二类不同的...
  • 程序要求:用扫描器获取输入的时间(年月日时分),这个时间的格式是常用的格式,然后格式化这个时间,把格式化的时间输出到控制台,可以在控制台重复输入时间.格式化的时间参考企业微信聊天记录的展示时间.用...
  • 断点续

    万次阅读 2020-09-02 18:01:06
    【1】断点续 【1】断点续 参考资料 HTTP/1.1开始支持断点续了。一般断点下载时才用到...典型格式: Ranges: (unit=first byte pos)-[last byte pos] Ranges: bytes=4000- 下载从第4000字节开始到文件结束部分
  • HTTP 断点续协议头部分析

    千次阅读 2014-02-25 22:04:29
    所谓断点续,也就是要从文件已经下载的地方开始继续下载。在以前版本的 HTTP 协议是不支持断点的,HTTP/1.1 开始就支持了。一般断点下载时才用到 Range 和 Content-Range 实体头。  Range   用于请求头中,...
  • 常见视频编解码格式

    千次阅读 2019-07-25 15:39:06
    常见视频编解码格式 1视频文件类别 常言道:物以类聚,人以群分。视频文件也不例外,细细算起来,视频文件可以分成两大类:其一是影像文件,比如说常见的VCD便是一例。其二是流式视频文件,这是随着国际互联网的...
  • 我们要实现下图所示,报错后返回json格式的信息,相当于把默认的html格式的异常变成json格式的。 但是我们继承了HTTPException就会出现下图的结果: 首先异常分为两种: 完全可以预知的异常 已知异常 可以...
  • date类型数据格式问题

    千次阅读 2016-11-08 10:49:13
    针对最近纠结的MySQL数据库和JSP中date类型数据的问题: ...我上网找了相关转化方法,我的主要目的是将它转化成yyyy-MM-dd格式,网上提供的频率最高的一种方法就是格式化转化,如下:Date date=ne
  • 基于java处理ofd格式文件

    千次阅读 热门讨论 2020-09-17 16:23:18
    国家发布过一份关于ofd编码格式的资料,本来我想上去的发现资源重复了,你们可以找找看,没有的话留个邮箱,我看到会发给你们的 ofd本质上其实是一个压缩文件,咱们把当做一个压缩包来处理就好了,思路是先解压...
  • RSA之格式转换

    万次阅读 2015-08-31 22:57:47
    有个需求:iOS客户端给密码RSA加密,到java后台,解密。JAVA和IOS各自找了RSA的算法实现代码,都能正常根据密钥对加解密。问题是各自使用对方的密钥对就不能加解密成功。 原来在用mac自带的openssl生成的密钥对...
  • idea设置-----编码格式设置

    千次阅读 2019-01-24 19:29:03
    文章背景 我们经常会在项目的配置文件,代码,运行时的控制台日志等等地方发现许多乱码,这很主要的原因是开发者在开发项目之前没有...在开发项目前没有先设置IDE的代码文件的编码格式使用了默认的编码格式,这导致...
  • js时间戳怎么转成日期格式

    万次阅读 2012-12-03 13:30:21
    这个在主群里有朋友§☆釺哖蟲...o问js时间戳怎么转成日期格式的问题是这样的 /Date(1354116249000)/ 这样的格式怎么转成时间格式 这是从C#的Datatime格式通过Json到Js里面的, 下面是我们的提供的方法 ...
  • 而且是跨语言的数据格式,目前绝大多数编程语言均支持XML。 2、XML实例 XML究竟怎么用?是什么样子的?我们来举一个简单的例子吧!A公司要和B公司业务对接(A公司要获取B公司的用户基本信息),B公司提供...
  • TCP报文段格式

    千次阅读 2018-06-28 22:14:19
    三次握手就是一次TCP建立链接的过程四次挥手就是一次TCP断开的过程所以在学习三次握手四次挥手之前先了解一下TCP报文段的格式源端口(2字节):发送端应用程序的端口号,与源IP地址确定一个唯一地址目的端口(2字节...
  • python格式化字符串的三种方法(%,format,f-string)

    万次阅读 多人点赞 2019-07-18 23:25:51
    DAY 7....%格式化字符串是python最早的,也是能兼容所有版本的一种字符串格式化方法,在一些python早期的库中,建议使用%格式化方式,会把字符串中的格式化符按顺序后面参数替换,格式是 "xxxxxx ...
  • 飞鸽书实现原理

    千次阅读 2014-05-06 20:44:45
    局域网聊天软件飞鸽书是... 程序启动时先读取用户配置文件,一般是"*.ini"格式,然后,使用Winsock的广播消息给整个局域网发送一个数据包,这时候,如果其他电脑已经运行了飞鸽书,那么收到这个包后,会将包的
  • 2. 定义时间格式化全局过滤器 在main.js中或组件中导入该组件 import moment from 'moment' 3. 用法一 在全局中定义时间格式化 在main.js中引入moment // 定义一个全局过滤器实现日期格式化 Vue.filter('datefmt',...
  • raw格式数据转BMP格式(OpenCV)

    千次阅读 2018-09-28 14:28:18
    data:属于void*类型,任何指针类型都可以进来,为了适配; step:默认就好; 通过这个构造函数,我大概猜想一下,如果我可以得到一个8位的unsigned char类型的数组,宽和高也知道的情况下,raw是不是就可以...
  • 许多客户对于什么是透模式不了解,当我们向客户说明什么是透模式时,许多人都不明白,现在海凌科电子有限公司现向客户说明什么是透模式。SerialNet模式将本地异步串口通信转换成基于TCP/UDP协议的网络通信。其...
  • 最近开发小程序的过程中,发现需求中有大量需要转换时间的地方,而且每个地方转换的时间格式都不一样,于是就想,小程序中是否有Vue的过滤器一样的方式,直接在输出到html时进行时间格式化操作,这样可以节省很多的...
  • jQuery向后台传入json格式数据的方法

    千次阅读 2017-08-08 10:11:42
    jQuery向后台传入json格式 本文实例讲述了jQuery向...jQuery向后台数据的时候,我们会发现会自动转化成查询字符串,不能真正传入一个json。而且用jquery对表单序列化的时候,返回的格式是一个数组,还需要作进一步
  • Swagger日期格式显示

    千次阅读 2020-09-05 18:24:13
    在swagger UI模型架构上,字段日期显示为“日期”:“2018-10-15T09:10:47.507Z”但我需要将其作为“日期”:“2018-9-26 12:18:48”...这是标准的 XML Schema的"日期型数据格式” T是代表后面跟着“时间”。Z代表0时区
  • IEEE论文格式要求

    万次阅读 2019-03-19 17:21:36
    0.特别提示:本次会议要求各位作者根据审稿意见进行认真修改,然后经过大会主席的检查合格才允许上传IEEE eXpress,主要的目的是为了保证论文集的质量,不让论文格式出现五花八门的情况,确保会议后被EI和ISTP检索。...
  • TLV 格式及编码

    万次阅读 2016-11-12 23:30:29
    几乎所有的需要在卡片和终端之间传送的数据都是TLV格式的. TLV是tag, length和value的缩写.一个基本的数据元就包括上面三个域. Tag唯一标识该数据元, length是value域的长度. Value就是数据本身了. 举个例子, ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 122,137
精华内容 48,854
关键字:

他传的格式