当接口请求体里的日期格式跟web页面日期格式不一致时,该如何处理呢?
首先引入Unix纪元时间戳的概念:即格林威治时间(GMT,Greenwich Mean Time)1970年1月1日00:00:00,到当前时间的秒数。单位为秒(s)。
那么当前时间的Unix纪元时间戳在python中怎么表达的呢?先看看如下案例:

上面我们看到这个日期框里面输入的值为日期格式(2019-10-19 23:59),输入参数后我们点击“发布个人作业”按钮后,通过F12查看到这个发布作业的接口的请求参数如下图:

发现endtime这个值跟我们前台传入的值不一样,这里它就用到了Unix纪元时间戳的表达方式,我们在做接口测试的时候,遇到这个问题该如何解决呢?
在python里,我们引入time和datetime模块,它们都是内置模块,无需安装
问题思考:1.如何将Unix纪元时间戳转换为日期格式?
2.如何将日期格式转换为Unix纪元时间戳?
通过以下代码演示如何转换:
1.将Unix纪元时间戳转换为日期格式,使用datetime.fromtimestamp()方法
import time
from datetime import datetime # Unix纪元时间戳转换为datetime日期格式
now_time = time.time() date_now_time = datetime.fromtimestamp(now_time) str_now_time = datetime.strftime(date_now_time, "%Y-%m-%d %H:%M:%S")
print(str_now_time, type(str_now_time))

2.将日期格式转换为Unix纪元时间戳,使用datetime.timestamp()方法
from datetime import datetime # datetime日期格式转换为Unix纪元时间戳
now_time = datetime.now() datetime_after_seven_day = round(datetime.timestamp(now_time))
print(datetime_after_seven_day, type(datetime_after_seven_day))

案例上的日期我们不能输入当前日期,必须要填入未来的日期,这个又该如何处理呢?datetime.datetime格式的数据可以通过datetime.timedelta()进行日期的加减操作,假如我们要将当前的日期加上7天,使用如下方法即可实现:
from datetime import datetime, timedelta # datetime日期格式转换为Unix纪元时间戳
now_time = datetime.now()
print(now_time, type(now_time)) after_seven_day = now_time + timedelta(days=7)
print(after_seven_day, type(after_seven_day)) datetime_after_seven_day = round(datetime.timestamp(after_seven_day))
print(datetime_after_seven_day, type(datetime_after_seven_day))

当接口请求体里的日期格式跟web页面日期格式不一致时,该如何处理呢?的更多相关文章
- django 请求体和请求体相关知识
请求头ContentType ContentType指的是请求体的编码类型,常见的类型共有3种: django 如果发送post请求,或者表单提交数据.如果不设置enctype属性. 就会以appli ...
- RobotFramework: 接口测试时,注意请求体content-type
使用Post Request关键字时 1.如果请求体的content-type为:application/x-www-form-urlencoded,则传参数时需要给params参数赋值 2.如果co ...
- Jmeter中使用HTTP信息头管理器发送json格式请求体的接口
Jmeter中,如果请求体的格式为x-www-form-urlencoded,则不需要添加请求头,保持默认即可,但是如果遇到接口的请求体格式为json时,就要用到HTTP信息头管理器,在线程组上右键— ...
- RIDE 接口自动化请求体参数中文时报错:“UnicodeDecodeError: 'ascii' codec can't decode byte 0xd7 in position 9......”
在进行robotframework 接口自动化,在请求体参数中输入中文会报以下错误: UnicodeDecodeError: 'ascii' codec can't decode byte 0xd7 ...
- vue --- axios拦截器+form格式请求体
在vue2.x中使用CLI生成的模板有很大改变,需要自己手动在main.ts同级目录下新建interceptors.ts interceptors.ts import axios from 'axio ...
- requests接口自动化2-url里不带参数的get请求
最常用的是get,post请求,然后是put,delete,其他方法很少用 1. get请求几种方式 1.1.url里不带参数的get请求 接口请求fiddler返回内容: import reques ...
- Excel里的格式会自动变成日期或会计专用吗?(Excel技巧集团)
Excel里的格式会自动变成日期或会计专用? 正常情况下当然不会了,可是最近却有很多很多同学问这样的问题,并把这个问题列成了Excel2007和2010的一个Bug,可是小妖同学却从来没遇到过这样的问 ...
- iOS开发——网络篇——文件下载(NSMutableData、NSFileHandle、NSOutputStream)和上传、压缩和解压(三方框架ZipArchive),请求头和请求体格式,断点续传Range
一.小文件下载 NSURL *url = [NSURL URLWithString:@"http://120.25.226.186:32812/resources/images/minion ...
- HTTP 请求头与请求体 - 某熊的全栈之路 - SegmentFault
本文从属于笔者的HTTP 理解与实践系列文章,对于HTTP的学习主要包含HTTP 基础.HTTP 请求头与请求体.HTTP 响应头与状态码.HTTP 缓存这四个部分,而对于HTTP相关的扩展与引申,我 ...
随机推荐
- spring+cxf No bean named 'cxf' available
最近项目中需要用到webservice,在spring中集成cxf时一直报错: 严重: StandardWrapper.Throwable org.springframework.beans.fact ...
- MySQL数据库:函数的应用
字符串截取 # 从左边开始 第1个字符 left(字段名,1) # 从那里开始,截取几个 substring(字段名,1,1) str函数 # 连接字符串 concat(s1,s2,s3,--,sn) ...
- centos7设置服务开机自启
1.在/usr/lib/systemd/system/路径下创建文件 ***.service. 写入如下内容 [Unit]Description=nginxAfter=network.target [ ...
- Excel 2003 与 Excel 2007之间有什么不同?
如果您使用Excel 2003已有数年,您可能会意识到使用更多最新版本的Excel(2007.2010.2013或Excel 2016)的人员或组织的数量正在增加.您甚至可能收到了自己的Excel工作 ...
- 关于tomcat对编码不正确的url参数报错的解决
按照规范,url参数必须使用限定字符,其它字符需要进行编码,用像js的encodeurlcomponent函数. 在IE和360浏览器的兼容模式,不会自动对url的参数进行编码,会导致tomcat报错 ...
- RTP Payload Format for VP8 Video
整体结构 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+ ...
- 集合系列 Queue(九):PriorityQueue
PriorityQueue 是一个优先级队列,其底层原理采用二叉堆实现.我们先来看看它的类声明: public class PriorityQueue<E> extends Abstrac ...
- typescript与nodejs(一)最简单的webserver
安装nodejs tsc cnpm vscode 这些略 如果网络慢,可以考虑使用CNPM 一. 基本WebServer模块环境 1. 命令行 npm init 初始化一个目录为nodejs项目 2 ...
- Java的BIO和NIO很难懂?用代码实践给你看,再不懂我转行!
本文原题“从实践角度重新理解BIO和NIO”,原文由Object分享,为了更好的内容表现力,收录时有改动. 1.引言 这段时间自己在看一些Java中BIO和NIO之类的东西,也看了很多博客,发现各种关 ...
- strlen函数 (求字符串长度函数)
strlen函数原型在<string.h>中 #include <stdio.h> #include <string.h> int main(){ char *p= ...