ABAP接口部分-Web Service提供者与消费者

ABAP接口部分-Web Service提供者与消费者

文章目录

  • ABAP接口部分-Web Service提供者与消费者
  • Web Service提供者
    • Web Service
      • 测试
      • 配置
      • [SOA网址](https://mysap.goodsap.cn:44300/sap/bc/webdynpro/sap/appl_soap_management )
      • 测试
  • Web Service消费者
    • 创建Services Consumer消费者
    • 创建RFC连接
    • 创建逻辑端口-IP地址
          • 现在不使用LPCONFIG创建逻辑接口,而是在SOA网址上创建
      • 使用URL
    • 输入用户名和密码
    • 报错
    • 创建逻辑端口-WebServices URL
          • 现在使用这个创建逻辑端口
      • 进入SOA网址
      • 填写端口信息
      • 重新测试执行
    • 用自己创建的WebService
      • 创建服务消费者
        • 注意
      • 创建RFC
      • 登录SOA网址
      • 测试服务消费者
      • 代码调用
        • 创建程序
      • 调用Web Service API
    • 后面这个本地文件不行
      • 创建逻辑端口
      • 测试服务消费者
      • 报错
        • 调用 SOAP 运行时函数时出错:SRT:Processing error in Internet Communication Framework: ("Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)")
    • Postman测试接口
        • Headers设置
      • Body设置
      • Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)

Web Service提供者

Web Service

1、 创建Web Service:SE80

在这里插入图片描述
在这里插入图片描述

在包上,右击,点击“创建”—“企业服务”:

在这里插入图片描述

选择Service Provider,点击继续:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

填写模块的名称:

在这里插入图片描述

如果没有函数模块,则创建一个:

事务代码:SE37

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

填写导入参数:
在这里插入图片描述

导出参数:

在这里插入图片描述

之后是:
在这里插入图片描述

在这里插入图片描述

点击完成:

在这里插入图片描述

点击保存:

在这里插入图片描述
在这里插入图片描述

点击确定:
在这里插入图片描述

点击激活按钮进行激活:

在这里插入图片描述

参数文件可以修改:

在这里插入图片描述

这个可以给外部第三方的开发人员调用:

在这里插入图片描述

测试

点击测试按钮进行测试:
在这里插入图片描述

点击“执行”:
在这里插入图片描述

执行结果:

在这里插入图片描述

修改成:
在这里插入图片描述

修改完成之后,点击这里:

在这里插入图片描述

点击"执行"按钮执行:
在这里插入图片描述

执行之后:

在这里插入图片描述

原本执行不成功,后面重新生成服务Z_WS002。
在这里插入图片描述

除了这种办法,还可以直接将函数发布成WebServices。

对Z_WS002同样进行SOA设置:
在这里插入图片描述
在这里插入图片描述

WSDL地址:http://mysap.goodsap.cn:50400/sap/bc/srt/wsdl/flv_10002A111AD1/bndg_url/sap/bc/srt/rfc/sap/z_ws002/400/z_ws002/z_ws002?sap-client=400

配置

1、 配置:t-code:soamanager(由于服务器问题,这个方法暂时配置不了;)
在这里插入图片描述

在点击“配置”按钮进行配置:
在这里插入图片描述

发现进去报错了:
在这里插入图片描述

后面在自购的账号群公告中看到这个SOA登录网址:

在这里插入图片描述

SOA网址

https://mysap.goodsap.cn:44300/sap/bc/webdynpro/sap/appl_soap_management

输入集团、用户和密码,点击登录:

在这里插入图片描述

点击“Web服务配置”:
在这里插入图片描述

这里填写我们刚刚创建的服务:

在这里插入图片描述

双击服务名称:

在这里插入图片描述

点击“创建服务”:

在这里插入图片描述

填写信息,点击“下一个”:
在这里插入图片描述

设置用户名和密码:
在这里插入图片描述

直接下一步->-下一步。

用户标识/密码如果无法选择,请把Web Service级别改为 NONE:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

点击“打开WSDL生成”:
在这里插入图片描述

复制URL:

在这里插入图片描述

http://mysap.goodsap.cn:50400/sap/bc/srt/wsdl/flv_10002A111AD1/bndg_url/sap/bc/srt/rfc/sap/z_ws001/400/z_ws001/z_ws001?sap-client=400

RFC函数同步更新:

注意: 如果RFC 函数更新了,也需要到Web Service服务做“一致性检查”更新同步;

在服务上右击,点击“一致性检查”:

在这里插入图片描述

保存并激活:
在这里插入图片描述

测试

点击测试运行按钮进行测试:
在这里插入图片描述
在这里插入图片描述

结果:
在这里插入图片描述

Web Service消费者

事务代码:SE80

创建Services Consumer消费者

选择:Service Consumer,点击“继续”:
在这里插入图片描述

选择“External WSDL/Schema”,点击“继续”:
在这里插入图片描述

选择“URL”:

在这里插入图片描述

输入URL地址:
在这里插入图片描述

输入用户名和密码:

在这里插入图片描述

点击,新建请求号,输入描述,点击确定:

在这里插入图片描述

选择好请求号:

在这里插入图片描述

输入请求号,输入前缀:

在这里插入图片描述

点击“完成”:
在这里插入图片描述
点击“保存”按钮进行保存:

在这里插入图片描述

保存并激活:

在这里插入图片描述

在这里插入图片描述

创建RFC连接

用事务代码 SM59 进入 RFC 连接配置:

事务代码:SM59

点击创建:
在这里插入图片描述

输入要创建的目标名称,选择连接类型:
在这里插入图片描述

输入描述,服务器提供者的域名和端口号,点击保存:

在这里插入图片描述

在这里插入图片描述

创建逻辑端口-IP地址

现在不使用LPCONFIG创建逻辑接口,而是在SOA网址上创建

使用在是外部ip地址和端口的情况,例如这种:

在这里插入图片描述

T-CODE: LPCONFIG

事务代码: LPCONFIG

输入事务代码之后,点击确定:

在这里插入图片描述

复制这个类的名称:

在这里插入图片描述

填写到这里:

在这里插入图片描述

如果是外部的ip地址端口,就可以使用下面的:

在这里插入图片描述

在这里插入图片描述

使用URL

如果是SAP WebSerivices创建的URL ,就填这个:
在这里插入图片描述

这里改了之后,还是报错。

这里要选中,否则激活会失败:
在这里插入图片描述

在这里插入图片描述

点击激活按钮进行激活:
在这里插入图片描述

返回接受者服务器运行测试:
在这里插入图片描述

输入逻辑接口:

在这里插入图片描述

可以点击这里,修改参数的名称:

在这里插入图片描述

可以这里返回执行界面:

在这里插入图片描述

点击“执行”按钮执行:

在这里插入图片描述

输入用户名和密码

在这里插入图片描述

报错

在这里插入图片描述
在这里插入图片描述

无法访问,是因为前面选择的是HTTP对象,RFC里面的WebServices_Test2,后面改成URL地址。
在这里插入图片描述

这个不是很清楚是怎么回事,后面查阅资料,重新再SOA中为WebServices消费者创建逻辑接口

在这里插入图片描述

创建逻辑端口-WebServices URL

现在使用这个创建逻辑端口

之前的逻辑端口没有什么效果,在这里重新创建逻辑端口,这个是基于之前在SAP系统中创建WebServices提供者时,暴露给外面的那个URL地址的。

进入SOA网址

进入SOA网址:
在这里插入图片描述

填写端口信息

填写逻辑端口的名称为ZWS_CO_Z_WS002_LHY,填写描述等信息:
在这里插入图片描述

填写WebServicesURL、用户名和密码:
在这里插入图片描述

点击“下一个”:
在这里插入图片描述

输入用户名和密码:
在这里插入图片描述

点击“完成”按钮:

在这里插入图片描述

填写好参数的值之后:

重新测试执行

点击执行:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

点击执行之后,返回结果是3:

在这里插入图片描述

用自己创建的WebService

将在C#中创建的WebService服务弄到本机的IIS上

创建服务消费者

事务代码:SE80

1、点击创建企业服务

在这里插入图片描述

选择“Service Customer”,点击“继续”:
在这里插入图片描述

选择“External WSDL/Schma",点击”继续“:
在这里插入图片描述

选择URL:
在这里插入图片描述

输入URL,要在文件的后面加上?wsdl:

在这里插入图片描述

填写请求号,点击创建,输入描述:
在这里插入图片描述

填写请求号,和前缀:
在这里插入图片描述

点击“完成“按钮:
在这里插入图片描述

点击保存:

在这里插入图片描述

创建的企业服务如下:
在这里插入图片描述

保存并激活:
在这里插入图片描述

注意

在这里插入图片描述

创建RFC

用事务代码 SM59 进入 RFC 连接配置:
在这里插入图片描述

填写描述、主机和端口:

在这里插入图片描述

点击“连接测试”:
在这里插入图片描述

输入用户名和密码即可:

在这里插入图片描述

登录SOA网址

在这里插入图片描述

点击“Web服务配置”:
在这里插入图片描述

选择消费者代理,输入筛选条件,找到这个类名,双击:

在这里插入图片描述

点击创建,选择“基于WSDL的配置’':
在这里插入图片描述

填写信息,勾选缺省:

在这里插入图片描述

输入URL,输入用户名和密码,点击下一个:

在这里插入图片描述

点击下一个:

在这里插入图片描述

输入用户名和密码,点击下一个:
在这里插入图片描述

点击下一个:
在这里插入图片描述

一直点击下一个,直至完成:
在这里插入图片描述

逻辑端口创建成功:
在这里插入图片描述

测试服务消费者

返回接受者服务器运行测试:
在这里插入图片描述

输入逻辑端口名称和方法名称,点击执行:
在这里插入图片描述

可以点击这个按钮,修改xml的内容:

在这里插入图片描述

修改完毕之后,可以点击这个按钮返回:
在这里插入图片描述

点击执行:

在这里插入图片描述

返回结果,说明配置成功:

在这里插入图片描述

代码调用

创建程序

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

输入下面的代码:

*&---------------------------------------------------------------------*
*& Report ZTEST_WEB_SERVICE_CONSUMER
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ztest_web_service_consumer.
DATA: lo_clientproxy   TYPE REF TO zws_co_web_service1soap,      "参考生成的代理类
      lo_sys_exception TYPE REF TO cx_ai_system_fault.
DATA: ls_srm_input          TYPE zws_age_soap_in,
      ls_srm_input_response TYPE zws_age_soap_out.

* 2、调用webservice
  CREATE OBJECT lo_clientproxy
    EXPORTING
      logical_port_name = 'ZWS_CO_WEB_SERVICE1SOAP'.  "调用对应的逻辑端口

      ls_srm_input-a1 = '22'.
      ls_srm_input-a2 = '52'.

      TRY.
      CALL METHOD lo_clientproxy->age
        EXPORTING
          input          = ls_srm_input
        IMPORTING
          output = ls_srm_input_response.

    CATCH cx_ai_system_fault INTO lo_sys_exception."捕获错误
      "CATCH zoa_cx_exception INTO lo_oa_exception.
  ENDTRY.
  "o_type    = ls_srm_input_response-parameters-return-status.
  "o_message = ls_srm_input_response-parameters-return-message.
  "o_data    = ls_srm_input_response-parameters-return-data.

WRITE: /,'WebService 测试:',ls_srm_input_response-age_result.

调用Web Service API

输入程序名,点击创建:

输入描述,选择可执行文件:

*&---------------------------------------------------------------------*
*& Report ZWEBSERVICE_TEST02
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ZWEBSERVICE_TEST02.

data: len         type        i,"发送报文长度
      len_string  type        string,
      url         type        string, "接口地址
      http_client type ref to if_http_client,"http客户端
      post_string type        string,
      result      type        string.

  DATA: LV_LEN         TYPE I.

data: it_header type tihttpnvp.
data: gv_json_in TYPE string.

gv_json_in = '{"ApiType":"SapInterfaceController","Parameters":[{"Value":[{"Factory":"1100",'
                &&'"FactoryName":"和胜","Center":"C001","CenterDesc":"工作中心001","Depart":"MES",'
                &&'"DepartName":"MES项目组","Flag":"0"}]}],"Method":"SaveWorkCenter","Context":{"InvOrgId":1}}'.

START-OF-SELECTION.

url = 'http://192.168.4.32:1028/api/dataportal/invoke'.

  "创建http客户端
  call method cl_http_client=>create_by_url
    exporting
      url                = url
    importing
      client             = http_client
    exceptions
      argument_not_found = 1
      plugin_not_active  = 2
      internal_error     = 3
      others             = 4.

  "设定传输请求内容格式以及编码格式
  http_client->REQUEST->SET_CONTENT_TYPE( CONTENT_TYPE = 'application/json; charset=utf-8' ).

 "设置http method 为POST
  http_client->request->set_method( if_http_request=>co_request_method_post ).
 "设置待传输内容长度
  LV_LEN = STRLEN( gv_json_in ).

 "设置调用方法
  CALL METHOD http_client->REQUEST->SET_HEADER_FIELD
    EXPORTING
      NAME  = '~request_method'
      VALUE = 'POST'.

  "http_client->request->set_cdata( data = gv_json_in ).

  "设置传入字符串
  CALL METHOD http_client->REQUEST->SET_CDATA
    EXPORTING
      DATA   = gv_json_in
      OFFSET = 0
      LENGTH = LV_LEN.
  "发送数据
  call method http_client->send
    exceptions
      http_communication_failure = 1
      http_invalid_state         = 2
      http_processing_failed     = 3
      http_invalid_timeout       = 4
      others                     = 5.
  "接收返回
  call method http_client->receive
    exceptions
      http_communication_failure = 1
      http_invalid_state         = 2
      http_processing_failed     = 3.

 "获取接口返回的字符串
  result = http_client->response->get_cdata( ).

WRITE: /,'测试数据',result.

后面这个本地文件不行

选择本地文件,因为本地的URL不成功:
在这里插入图片描述

选择文件:
在这里插入图片描述

在这里另存为下来的:
在这里插入图片描述

创建新的请求号,并填写描述:
在这里插入图片描述

填写内容之后,点击“继续”:
在这里插入图片描述

点击“完成”:
在这里插入图片描述

点击保存,并激活:
在这里插入图片描述

创建逻辑端口

为我们刚刚创建的消费者创建逻辑端口

登录SOA网址:https://mysap.goodsap.cn:44300/sap/bc/webdynpro/sap/appl_soap_management

在这里插入图片描述
在这里插入图片描述

选择“Web服务配置”:
在这里插入图片描述

选择“消费者代理”,输入ZSW_*筛选条件,点击搜索,找到我们刚刚创建的消费者代理:
在这里插入图片描述

双击刚刚创建的“消费者代理”:

在这里插入图片描述

点击“创建”,选择“基于WSDL的配置”:

在这里插入图片描述

输入逻辑端口名称和描述,点击下一个:
在这里插入图片描述

选择文件,选中文件,点击下一个:
在这里插入图片描述

输入用户名和密码,点击下一个:
在这里插入图片描述

点击“下一个”:
在这里插入图片描述

点击“完成”:
在这里插入图片描述

测试服务消费者

点击执行测试:

在这里插入图片描述

输入逻辑端口名称,点击执行
在这里插入图片描述

选择方法,再次点击执行:

在这里插入图片描述

可以点击这里修改XML内容,改变参数的值:

在这里插入图片描述

修改参数的值,点击返回:

在这里插入图片描述

点击“执行”:

在这里插入图片描述

报错

点击执行之后,报下面的错误:
在这里插入图片描述

在这里插入图片描述

调用 SOAP 运行时函数时出错:SRT:Processing error in Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)

出现上面这个问题是因为,我自己的SAP服务器在外网,但是我访问的地址是内网地址,所以是访问不到的,所以失败了。

SRT Framework exception: 服务 Ping 错误:调用 SOAP 运行时函数时出错:SRT: Processing errorin Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)类型消息SRT Framework exception: 服务 Ping 错误:调用 SOAP 运行时函数时出错:SRT: Processing errorin Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)服务 Ping 错误:调用 SOAP 运行时函数时出错:SRT: Processing error in Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”)处理 Web 服务调用时出错调用 SOAP 运行时函数时出错:SRT: Processing error in Internet Communication Framework: (“Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)”

Postman测试接口

首先用Postman测试接口是否配通

Headers设置

在这里插入图片描述

报错如下:
在这里插入图片描述

Body设置

选择raw,XML:

在这里插入图片描述

这里填成在浏览器测试时显示的请求格式:

在这里插入图片描述

点击Send发送,得到相应结果:

在这里插入图片描述

Direct connect to 192.168.7.31:8080 failed: NIECONN_REFUSED(-10)

在这里插入图片描述

这个问题没有解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/450543.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

光学硬件——二向色片

二向色镜(Dichroic Mirrors )又称双色镜,常用于激光技术中。 产品介绍: 指45度入射或大角度入射时,把光源分离出特定的光谱改变部分光谱光路方向,常用于酶标仪器、荧光显微镜系统、投影光引擎系统、激光灯…

MySQL--索引底层数据结构详解

索引是什么? 索引是帮助MySQL高效获取数据的排好序的数据结构,因此可知索引是数据结构。 概念很抽象,但是类比生活中的例子就很容易理解,比如一本厚厚的书,我们想取找某一小节,我们可以根据目录去快速找到…

魔法之线:探索string类的神秘世界

🎉个人名片: 🐼作者简介:一名乐于分享在学习道路上收获的大二在校生 🙈个人主页🎉:GOTXX 🐼个人WeChat:ILXOXVJE 🐼本文由GOTXX原创,首发CSDN&…

Java SE String类(一):常用方法(上)

1. 常用方法 1.1 字符串构造 String类的常用构造方法只有以下三种 public class Main {public static void main(String[] args) {String s1 "hello";//使用常量串进行构造String s2 new String("hello");//创建String对象char[] array {h,e,l,l,o};…

基于springboot的医护人员排班系统

预览地址 论文预览https://pan.imgbed.link/kkpreview/onlinePreview?urlaHR0cHM6Ly9wYW4uaW1nYmVkLmxpbmsvZmlsZS8yMTYxNT9mdWxsZmlsZW5hbWU95Z%2B65LqOc3ByaW5nYm9vdOeahOWMu%2BaKpOS6uuWRmOaOkuePreezu%2Be7n%2BiuuuaWhy5kb2M%3D 链接:https://pan.baidu.com/s/…

数据复制:释放新质生产力的关键钥匙

今年两会,新质生产力成为最热词汇,引起社会各界广泛关注。 所谓新质生产力,本质是一种新型的生产力形态,它由技术革命性突破、生产要素创新性配置、产业深度转型升级而催生,以劳动者、劳动资料、劳动对象及其优化组合…

24-Java策略模式 ( Strategy Pattern )

Java策略模式 摘要实现范例 策略模式的重心不是如何实现算法,而是如何组织、调用这些算法,从而让程序结构更加灵活,具有更好的维护性和扩展性。 策略模式属于行为型模式 摘要 1. 意图 针对一组算法,将每一个算法封装到具有共…

【C++进阶】C++继承概念详解

C继承详解 一,继承的概念和定义1.1 继承的概念1.2 继承的定义1.3 继承关系和访问限定符 二,基类和派生类的对象赋值转移三,继承的作用域四,派生类的默认成员函数五,继承和友元&静态成员和继承六,菱形继…

【案例】义乌佛堂智慧蔬菜产业园投入使用,为高效农业提供技术保障

项目背景 佛堂蔬菜产业园位于佛堂镇毛陈村,由义乌市市场发展集团旗下义乌市农业开发有限公司负责打造。园区于2021年开始筹建,总投资5000万元,占地面积约450亩,建有标准化蔬菜大棚72个。 传统大棚对农民依赖性特别强,需…

视频素材哪里找?几个高清短视频素材下载网站分享

哥们姐妹们,是不是在追求完美的短视频创作路上因为找不到那个令人心动的高清视频素材而头大呢?别着急,我这儿有几个秘密武器,即几个超给力的短视频素材网站,让你的作品从此分分钟高大上起来 1,蛙学府 这里…

什么是模块化机房?

在这个数据驱动的时代,数据中心的作用变得日益重要。而模块化机房,作为一种创新的数据中心解决方案,正在逐渐改变我们构建和管理这些关键设施的方式。但究竟什么是模块化机房呢?它又为何受到越来越多行业的青睐?在本文…

Caffeine--实现进程缓存

本地进程缓存特点 缓存在日常开发中起着至关重要的作用, 由于存储在内存中, 数据的读取速度非常快,能大量减少对数据库的访问,减少数据库的压力. 缓存分为两类: 分布式缓存, 例如Redis: 优点: 存储容量大, 可靠性更好, 可以在集群间共享缺点: 访问缓存存在网络开销场景: 缓存数…

1688平台最关键的接口接入实例|获得1688商品详情| 按关键字搜索商品| 按图搜索1688商品(拍立淘)| 获得淘口令真实url

参数说明 通用参数说明 version:API版本key:调用key,测试key:test_api_keyapi_name:API类型[item_get,item_search]cache:[yes,no]默认yes,将调用缓存的数据,速度比较快result_type:[json,xml,serialize,var_export]返回数据格式,默认为jsonl…

pytorch CV入门3-预训练模型与迁移学习

专栏链接:https://blog.csdn.net/qq_33345365/category_12578430.html 初次编辑:2024/3/7;最后编辑:2024/3/8 参考网站-微软教程:https://learn.microsoft.com/en-us/training/modules/intro-computer-vision-pytorc…

三个el-radio选项怎么知道用户选择了哪一个

问: 回答: 要获取用户选择了第二个还是第三个 <el-radio>&#xff0c;你可以在 change 事件处理函数 changeAPPVersion 中判断选中的值是什么。你需要给第二个和第三个 <el-radio> 设置不同的值&#xff0c;然后在 changeAPPVersion 方法中根据这个值来确定用户选…

Selenium自动化测试面试题全家桶

1、什么是自动化测试、自动化测试的优势是什么&#xff1f; 通过工具或脚本代替手工测试执行过程的测试都叫自动化测试。 自动化测试的优势&#xff1a; 1、减少回归测试成本 2、减少兼容性测试成本 3、提高测试反馈速度 4、提高测试覆盖率 5、让测试工程师做更有意义的…

建造家庭泳池位置选择尤为重要

建造家庭泳池位置选择尤为重要 在自家别墅庭院中建造一座游泳池是很多人的梦想&#xff0c;因为有泳池家人健身起来是非常方便的&#xff0c;但是建造泳池选择合适的位置显得尤为关键&#xff0c;因为合适的选址可以带来美观性及在泳池的日常使用维护中也起到了很重要的作用。…

idea实现ssh远程连接服务器

1. 首先&#xff0c;打开idea&#xff0c;点击左上角File->settings 2. 点击tools->SSH Configurations->填写必要的信息&#xff0c;Host就是访问服务器的ip地址&#xff0c;Username就是服务器的用户账户&#xff0c;比如root&#xff0c;Password账户对应的密码&am…

如何克服应用程序性能监控( APM )面临的挑战

应用程序性能监控&#xff08;APM&#xff09;使组织能够监控性能 其关键业务应用程序的指标&#xff0c;在出现性能问题时及时收到警报&#xff0c;以及生成用于定期性能分析的报告。应用程序性能监视工具对于任何依赖应用程序的组织来说都是必不可少的&#xff0c;它可以帮助…

【渗透测试】常见文件上传漏洞处理与防范

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属的专栏&#xff1a;网络安全渗透 景天的主页&#xff1a;景天科技苑 文章目录 1.文件上传漏洞1.1. 描述1.2. 危害1.3. 有关文件上传的知识1.4…