avatar

sunday

Sunday's Blog

  • 首页
Home github actions 发送Axios请求并获取JSON数据
文章

github actions 发送Axios请求并获取JSON数据

Posted 2024-07-20 Updated 2024-07- 21
By sunday
3~4 min read

1.推送的时候调用其他webhook 或任意http请求

以下是一个模板

name: Axios

on:
  push:
    branches:
      - main# 或者你使用的是哪个分支

jobs:
  axios-action:
    runs-on: ubuntu-latest
    steps:
      - name: Call Auth API
        uses: actionsflow/axios@v1
        id: api
        with:
          url: https://example.com/api/token
          method: "GET"
          # basic-auth: "${{ secrets.username }}:${{ secrets.password }}"
      - run: echo ${{ steps.api.outputs.data }} # 打印数据
      # - run: echo ${{ steps.api.outputs.data.data.token }}

      #- name: Get current timestamp 获取当前时间戳
      #  id: get_timestamp
      #  run: echo "BUILD_TIME=$(date +'%s')" >> $GITHUB_ENV
      #- run: echo ${{ env.BUILD_TIME }}

      - name: Extract JSON Property 获取JSON数据
        id: extract-json
        run: |
          getToken=$(echo '${{ steps.api.outputs.data }}' | jq -r '.data.token')
          echo "token=$getToken" >> $GITHUB_ENV  # 添加到环境变量里

      - name: Call API
        uses: actionsflow/axios@v1
        id: api2
        with:
          url: https://example.com/api/user
          method: "POST"
          data: '{ "usename": "your_name" }'
          headers: '{ "Authorization": "Bearer ${{ env.token }}" }'

获取JSON数据那里的代码 getToken=$(echo '${{ steps.api.outputs.data }}' | jq -r '.data.token')

其中 steps.api.outputs.data 这个是获取上一步ID 请求的响应数据,比如返回的数据结构为

{
  "code": 0,
  "data": {
    "token": '123456789',
    "expiration": 1724065758
  }
}

要获取expiration 这个属性值,则修改jq -r '.data.token' 为 jq -r '.data.expiration' 即可

软件使用
软件使用
License:  CC BY 4.0
Share

Further Reading

Dec 14, 2024

cursor IDE 编辑器从命令行打开

1.打开Cursor应用程序 2.按下 CMD(Ctrl) + Shift + P 打开命令面板

Dec 7, 2024

n8n使用http form-data上传文件

新建一个http node 节点,参数如下图所示,其他参数可自行设置 主要是1.开启 Send Body 2.设置n8n Binary File类型,然后在 input Data Field Name 填入上一个节点的二进制文件名即可 也可复制我的JSON文件到你的n8n上测试 My_workflo

Dec 5, 2024

supabase postgres updatedAt 自动更新时间戳

由于在prisma 创建model时,@updatedAt 不起作用 model Book { id String @id @default(dbgenerated("gen_random_uuid()")) createdAt DateTime @default(dbge

OLDER

javascript检测键盘是否开启大写状态

NEWER

cloudflare的worker/pages通过SaaS自定义域名加速国内访问

Recently Updated

  • nextjs15使用better-sqlite3的连接报错问题
  • nextjs + clerk + supabase + realtime 实时监听数据库更改
  • 解决nextjs15使用useLocalStorage报错的问题
  • mac上使用nodejs appium控制chrome浏览器
  • 2024年终总结

Trending Tags

nginx acme 强制跳转HTTPS nodejs 代理 mac 神器 vue3 工具 docker

Contents

©2025 sunday. Some rights reserved.

Using the Halo theme Chirpy