python_发送请求类

一、发送请求类

import requests

class MyRequest:
    def __init__(self,url,method=‘get‘,data=None,headers=None,is_json=False):
        method = method.lower()
        self.url = url
        self.data = data
        self.headers = headers
        self.is_json = is_json
        if hasattr(self,method):
            getattr(self,method)()    #反射

    def get(self):
        try:
            req = requests.get(self.url,self.data,heasers=self.headers).json()
        except Exception as e:
            self.response = {‘error‘:‘接口请求出错%s‘%e}
        else:
            self.response = req

    def post(self):
        try:
            if self.is_json:
                req = requests.post(self.url, json=self.data, heasers=self.headers).json()
            else:
                req = requests.post(self.url, self.data, heasers=self.headers).json()
        except Exception as e:
            self.response = {‘error‘: ‘接口请求出错%s‘%e}
        else:
            self.response = req

if __name__ == ‘__main__‘:
    import jsonpath
    login = MyRequest(‘ http://127.0.0.1:5000/login‘,data={‘username‘:‘xmb‘,‘password‘:123456})
    result = jsonpath.jsonpath(login.response,‘$..session_id‘)
    if result:
        print(‘登录成功‘)
    else:
        print(‘登录失败‘)

原文地址:https://www.cnblogs.com/xumb/p/11963581.html

时间: 2024-10-29 16:37:23

python_发送请求类的相关文章

发送请求工具类

采用HttpClient与远程服务器通信,所以定义一个工具类对HttpClient进行封装getRequest():发送get请求postRequest():发送post请求 FutureTask(Callable<V> callable)  //创建一个 FutureTask,一旦运行就执行给定的 Callable. FutureTask(Runnable runnable, V result)   //创建一个 FutureTask,一旦运行就执行给定的 Runnable,并安排成功完成时

RestTemplate工具类根据服务名发送请求

要使用RestTemplate 根据服务名发送请求的话需要 使用  @LoadBalanced  这个注解,用了这个注解的RestTemplate就不用使用  ip 来请求了,首先要创建一个配置类 import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.context.annotation.Bean; import org.springframework.conte

spring MVC 管理HttpClient---实现在java中直接向Controller发送请求

在spring MVC中,大多数时候是由客户端的页面通过ajax等方式向controller发送请求,但有时候需要在java代码中直接向controller发送请求,这时可以使用HttpCilent实现. 首先用到的包是httpclient-4.3.5.jar和httpcore-4.3.2.jar 先看下面代码: package module.system.common; import java.io.IOException; import java.util.ArrayList; import

WorldWind源码剖析系列:下载请求类DownloadRequest

下载请求类DownloadRequest是各种下载请求的抽象基类,先派生出网络下载请求类WebDownloadRequest,再派生出地理空间下载请求类GeoSpatialDownloadRequest(抽象类),再派生出地形下载请求类TerrainDownloadRequest.这些类的类图如下. 抽象基类下载请求类DownloadRequest 抽象基类下载请求类DownloadRequest各个字段和属性的含义说明如下: internal static DownloadQueue Queu

Java爬虫(一)利用GET和POST发送请求,获取服务器返回信息

本人所使用软件 eclipse fiddle UC浏览器 分析请求信息 以知乎(https://www.zhihu.com)为例,模拟登陆请求,获取登陆后首页,首先就是分析请求信息. 用UC浏览器F12,点击Network,按F5刷新.使用自己账号登陆知乎后,点www.zhihu.com网址后,出现以下界面  在General中,看到请求方式是GET,在fiddle里请求构造中,方法选定GET. 下拉后,看到Request Header,将里面所有的内容复制下来,粘贴到fiddle的请求构造里 

学习-【前端】-angularjs基本框架以及向服务器发送请求的方法

昨天写了个跨域的东西,自己琢磨了下,想到这种方式正好也是之前想的混合app如何交互服务器的解决办法.心里还是蛮开心的.今天又花时间把前端客户端部分的框架做了出来,整合的思路是参照node社区移动端的设计方案,把所有controllers和所有services放到一起,不过请求数据未用$resource也没有用原生的$http,而是使用了restangular,用完这个再把配置文件单独整合到一个文件夹里.整个框架看起来都十分的整洁了. 先给个结构图: 因为是由产品驱动的架构,所以最开始没有使用bo

页面发送请求到后台报错“Empty or invalid anti forgery header token.”问题解决

在页面向后台发送请求时,报如上图的错误的解决办法: 在WebModule.cs类中的PreInitialize方法中加 Configuration.Modules.AbpWeb().AntiForgery.IsEnabled = false; 另外还有添加引用: using Abp.Configuration.Startup; 出现这个问题的原因是没有使用abp.ajax的请求方式,而是使用其他的方式 另外还有其他的解决办法: 1.在Controller的Action里标注:[DisableAb

Android客户端连接服务器端,向服务器端发送请求HttpURLConnection

在Java中想后台服务器发送请求一般都直接使用了Java的网络编程,或者使用HttpClient向后台服务器端发送HTTP请求.虽然在安卓中,所有Java的API都可以使用,而却使用其并不会出现什么问题,但是HttpClient毕竟是基于Java标准实现的一个类,在安卓中,想要连接后台服务器端,专门基于android实现了一个类,为HttpURLConnection.通过HttpURLConnection,我们可以实现向服务器端发送HTTP请求,连通后台服务器和客户端. 这几天刚好在做andro

HTTPS 客户端发送请求(一)

HTTPS 发送请求(一) 摘 要 JSSE是一个SSL和TLS的纯Java实现,通过JSSE可以很容易地编程实现对HTTPS站点的访问.但是,如果该站点的证书未经权威机构的验证,JSSE将拒绝信任该证书从而不能访问HTTPS站点.本文在简要介绍JSSE的基础上提出了两种解决该问题的方法. 引言 过去的十几年,网络上已经积累了大量的Web应用.如今,无论是整合原有的Web应用系统,还是进行新的Web开发,都要求通过编程来访问某些Web页面.传统的方法是使用Socket接口,但现在很多开发平台或工