码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • groovy:调用jenkins任务时的请求失败问题


    目录

    • 前言
    • 在groovy脚本内执行jenkins任务
    • 推送
    • 结语

    前言

    在做gitblit仓库的钩子的时候,用到了groovy脚本,有任务需要在推送完成后执行以下jenkins的一些任务,然后出现问题了,jenkins的任务地址,在网页上调用没有问题,但是在脚本内就会失败,最后发现需要补充一个请求的标头在可以成功

    在groovy脚本内执行jenkins任务

    import com.gitblit.utils.JGitUtils
    import org.eclipse.jgit.lib.Repository
    import org.eclipse.jgit.transport.ReceiveCommand
    
    
    String triggerUrl = "http://内网地址/job/jenkins任务名/buildWithParameters?任务参数" 
    def url = new URL(triggerUrl);
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.getContent();
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    在上述groovy脚本内,我们通过地址,执行了一个jenkins的任务,但是任务失败了失败了,报错信息如上图所示

    String triggerUrl = "http://内网地址/job/jenkins任务名/buildWithParameters?任务参数" 
    def url = new URL(triggerUrl);
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setRequestProperty("Cookie", "jenkins-timestamper-offset=-28800000; screenResolution=1920x1080; JSESSIONID.b0b6f386=node01sfcleub6om466nw6tvlzkh2v246.node0");
    connection.getContent();
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    经过简单的测试,发现需要给请求补充一个标头才可以,伪装一下,标头不用特别多的信息,只需要有Cookie就可以了,Cookie可以在jenkins任务的网页上获取到,将任务地址输入在网页搜索栏,然后按F12,如上图所示可以看到需要的Cookie

    推送

    • Github
    https://github.com/KingSun5
    
    • 1

    结语

    若是觉得博主的文章写的不错,不妨关注一下博主,点赞一下博文,另博主能力有限,若文中有出现什么错误的地方,欢迎各位评论指摘。
    本文属于原创文章,转载请著名作者出处并置顶!!

  • 相关阅读:
    再获两家头部车企量产定点,本土HUD新玩家拼了!
    大学生川菜网页制作教程 学生HTML静态美食菜品网页设计作业成品 简单网页制作代码 学生美食网页作品免费设计
    RabbitMQ入门
    在微服务架构中使用JWT
    游戏行业很赚钱吗?优漫动游
    【无标题】
    汽车软件单元测试分析
    第三章《数组与循环》第8节:数组与循环经典例题
    半导体存储芯片简介
    JDBC使用了哪种设计模式
  • 原文地址:https://blog.csdn.net/Mr_Sun88/article/details/127646424
  • 最新文章
  • 【FHE】我们如何实现同态加密推理(八):SiLU 的密文化——两条路径,和一个 8 字节的开关
    SQLcl 中 c/old/new 替换变量为何失效?先定位再替换
    不让模型写作文,直接从它脑子里读答案:Jev 决策在 .NET 的两条路线
    Halo插件:支持GitHub的图床附件策略
    电视投屏界的“一股清流”!SimpleTVCast 6.0.0-beta 抢先体验:无需TV端App,界面大换血!✨
    华三VXLAN集中式网关实战指南:Spine多活网关 + 双活接入(M-LAG)
    软件更好写之后口碑会更重要
    大 O、大 Omega、大 Theta 的区别,O(n) 复杂度是什么意思
    Java标签跳转:一个鲜为人知但却很实用的小技巧
    多智能体系统论文速读
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号