MiraiForum

    • 注册
    • 登录
    • 搜索
    • 热门
    • 最新
    • 未解决
    • 标签
    • 群组
    • 友情链接
    1. 主页
    2. Dituon
    3. 帖子
    • 资料
    • 关注 0
    • 粉丝 7
    • 主题 12
    • 帖子 289
    • 最佳 50
    • 有争议的 0
    • 群组 1

    Dituon 发布的帖子

    • RE: [教程] 使用 cloud flare worker 实现免费接口代理

      与文章不相关的知识: 设置worker在某些更节能的服务器上运行以拯救地球

      1f17f68045eca09d5fe4bd73602497b3.png

      发布在 开发交流
      Dituon
      Dituon
    • RE: 有没有大佬懂用SteamWebApi以服务器IP+端口获取服务器信息啊

      @xiatianYa
      https://mirai.mamoe.net/topic/2584

      发布在 开发交流
      Dituon
      Dituon
    • [教程] 使用 cloud flare worker 实现免费接口代理

      背景

      看到了 @xiatianYa 的求助帖与一些回复 https://mirai.mamoe.net/topic/2575/ 发现很多人不知道 cloud flare worker 免费服务,作为资深白嫖怪教大家如何白嫖接口代理。

      要求

      1. 您冰雪聪明的大脑 (必须)
      2. 一点js基础 (可选)
      3. 心仪的域名 (可选)
      4. 赞美的心 (可选)

      介绍

      cloud flare worker 是 cloud flare (知名免费CDN厂商) 一段时间之前推出的一项免费服务, 允许在CDN服务器上运行js脚本或wasm

      截止到这篇文章写完的时候,这仍是一项长期免费服务,免费套餐为每天 100000 个请求, 大概是100个人 每人请求100次, 或0.01个人 每人请求10000000次

      步骤

      如果您在下方任何步骤中出现了问题,请移步下方的 常见问题 小结

      1. 注册/登录账户 https://dash.cloudflare.com/login

      2. 创建Worker
        d357a244-1af3-4616-b6f1-852de5ae6990-image.png
        cc30ef6c-bab3-40d2-9c5d-2a1643aacb00-image.png

      3. 设置一个便于记忆的 Name (可选)
        c2557bc5-3027-4944-ac42-6748f73cca7f-image.png

      4. 创建成功,点击修改代码
        cb55515f-8b1e-4c20-8eb8-ac6e37ea8dd3-image.png

      5. 写代码
        以背景里的求助帖为例,需要代理的接口为
        https://api.steampowered.com/IGameServersService/GetServerList/v1/?key=A96B85AE8E6A3E52C726563D902C2B77&filter=addr\180.102.24.61:16261
        则可以用以下代码代理

      export default {
        async fetch(request, env, ctx) {
          // 指定要代理的目标地址
          const targetURL = 'https://api.steampowered.com/IGameServersService/GetServerList/v1/?key=A96B85AE8E6A3E52C726563D902C2B77&filter=addr\\180.102.24.61:16261';
          const modifiedRequest = new Request(targetURL, request);
          const response = await fetch(modifiedRequest);
      
          return new Response(response.body, {
            status: response.status,
            statusText: response.statusText,
            headers: response.headers,
          });
        },
      };
      
      1. 保存 (建议先进行请求测试(葱绿色框框))
        2948f5e8-fe19-4357-82fc-2eca2289e421-image.png

      2. 大功告成,可以通过图上的链接访问
        https://hello-world-autumn-fire-2598.d2n.workers.dev/
        d71ef107-105c-41bf-ba7e-6843a5cc4187-image.png

      3. 可选:域名太丑怎么办,使用自己的域名代理
        1facbbdb-b841-43fc-a4a0-99a50a5c6d34-image.png bfe80147-ce11-410e-8d8a-19e5f731723d-image.png
        于是就可以在 https://d2n.moe/helloworker 访问了

      常见问题

      Q: 访问不了 cloudflare 怎么办啊
      A: 参考下一条问题

      Q: 保存不了代码怎么办啊
      A: 参考下一条问题

      Q: 默认的 workers.dev 域名访问不了怎么办啊
      A: workers.dev 的域名在中国某些地区惨遭DNS污染,可修改hosts访问,或使用梯子进行编辑,挂载到自己的域名下即可

      Q: 挂载时找不到域名怎么办啊
      A: 先在cloudflare中添加您的域名

      Q: 怎么添加域名啊
      A: https://www.bing.com/search?q=cloudflare+添加域名

      Q: 遇到的问题这里没有怎么办啊
      A: 跟帖补充

      后话

      因为便于演示的原因,只代理了某个特定的地址,通过修改代码实现代理任意地址或动态地址等,也可实现修改header实现cors转发等高级操作,本教程抛砖引玉,希望坛友发挥主观能动性

      如果你来自遥远的未来,本文的大部分信息可能已经失效(例如示例数据,代码,域名等), 请开动脑筋找到适合当前时代的解决方案, 也可以回帖询问我, 如果不回复就是已经过世了,请用赞美之心为我默哀几秒

      如果你不会写代码,可以用以下咒语询问GPT等有代码写作能力的聊天AI

      帮我写一个 cloudflare worker,风格为ESM,样式为: 
      
      export default {
        async fetch(request, env, ctx) {
          return new Response('Hello World!');
        },
      };
      
      如果你有访问网络的能力,文档地址为 https://developers.cloudflare.com/workers/
      
      代理xxx地址,提供xxx功能,oooxxx
      

      如果你的AI太笨, 写的代码没法用, 欢迎回帖求助

      如果有任何其它问题,欢迎回帖提问

      本文随意转载 CC-BY-NC-SA,请先告知我

      发布在 开发交流
      Dituon
      Dituon
    • RE: 有没有大佬懂用SteamWebApi以服务器IP+端口获取服务器信息啊

      @xiatianYa 可以试试cloudflare的免费worker代理

      发布在 开发交流
      Dituon
      Dituon
    • RE: QQ群bot官方接口,与使用体验

      markdown模板申请通过了,晚点更新使用体验

      发布在 开发交流
      Dituon
      Dituon
    • RE: [RainyBot]基于mirai-core二次封装的机器人框架

      支持

      发布在 其他项目发布
      Dituon
      Dituon
    • RE: java如何使用mockbot来做捕获事件测试?

      @hisou 我实现过这种需求,是用 LinkedHashMap<Long, String> 建立了图片缓存,仅缓存用户发送的图片,并指定缓存容量。

      伪代码

          private LinkedHashMap<Long, String> imageCachePool;
      
      // 插件初始化
          if (service.respondReply) {
                  imageCachePool = new LinkedHashMap<>(service.cachePoolSize, 0.75f, true) {
                      @Override
                      public boolean removeEldestEntry(Map.Entry eldest) {
                          return size() > service.cachePoolSize;
                      }
                  };
                  GlobalEventChannel.INSTANCE.subscribeAlways(GroupMessageEvent.class, this::cacheMessageImage);
                  GlobalEventChannel.INSTANCE.subscribeAlways(GroupMessagePostSendEvent.class, this::cacheMessageImage);
          }
      
          private void cacheMessageImage(MessageEvent e) {
              for (SingleMessage singleMessage : e.getMessage()) {
                  if (singleMessage instanceof Image) {
                      long id = e.getSubject().getId() + e.getMessage().get(MessageSource.Key).getIds()[0];
                      imageCachePool.put(id, Image.queryUrl((Image) singleMessage));
                      return;
                  }
              }
          }
      
      
      // 主消息处理方法
          for (SingleMessage singleMessage : e.getMessage()) {
          
                      if (singleMessage instanceof QuoteReply && service.respondReply) {
          
                          long id = e.getGroup().getId() + ((QuoteReply) singleMessage).getSource().getIds()[0];
          
                          if (imageCachePool.get(id) == null) continue;
      
                           //使用缓存的图片链接
                      }
          }
      
      
      发布在 开发交流
      Dituon
      Dituon
    • RE: java如何使用mockbot来做捕获事件测试?

      原消息内容有什么用途呢 ?

      如果只需要获取文本的话,可以 监听消息并取出引用消息实例直接获取文本 (例如: 引用消息的图片或at会转换为 [图片] 和 @xxx 的形式)

      如果需要获取完整的原消息的话,可以考虑 通过消息id进行缓存 ,回复时从缓存取出原消息。

      希望能具体描述一下想要实现的功能,而不是直接放出一段用于测试的代码

      补充: 因为Mirai对于引用消息的处理在这两个获取方式下是有区别的,所以要按情境选择适合的方法进行处理, 建议补充实际使用场景便于解决问题

      发布在 开发交流
      Dituon
      Dituon
    • RE: 关于lolicon在群聊中发不出图片

      图片太色被腾讯吞掉了,换张图片试试

      发布在 使用交流
      Dituon
      Dituon
    • RE: 【涩图插件喜加一】mirai-console-lolicon

      @huang583824382 多半被腾讯吞了

      发布在 插件发布
      Dituon
      Dituon
    • RE: QQ群bot官方接口,与使用体验

      群里有人好奇管理面板是什么样的,在这里发一下

      image.png

      image.png

      image.png

      发布在 开发交流
      Dituon
      Dituon
    • RE: QQ群bot官方接口,与使用体验

      腾讯的审核挺玄学的,有时候违规有时候就不违规,建议送审时把汉字都删掉,不然说不准就有什么不该出现的关键词导致不通过再等一周

      image.png

      发布在 开发交流
      Dituon
      Dituon
    • RE: QQ群bot官方接口,与使用体验

      bot终于能邀请了,大家可以试试我的bot:
      3889001070

      发布在 开发交流
      Dituon
      Dituon
    • RE: mc2qc - 一个可以将Minecraft服务器消息转发至QQ群的插件

      @onlyxiyu

      出现问题建议在Github提issue,这边可能看不到

      项目地址:

      github

      发布在 插件发布
      Dituon
      Dituon
    • RE: qc2mc - 一个可以将指定QQ群的消息转发至Minecraft服务器的插件

      @onlyxiyu https://mirai.mamoe.net/topic/948

      发布在 插件发布
      Dituon
      Dituon
    • RE: qc2mc - 一个可以将指定QQ群的消息转发至Minecraft服务器的插件

      @onlyxiyu 将本地地址替换为服务器远程地址即可,别忘记设置复杂的rcon密码

      发布在 插件发布
      Dituon
      Dituon
    • RE: qc2mc - 一个可以将指定QQ群的消息转发至Minecraft服务器的插件

      @onlyxiyu 不一定

      发布在 插件发布
      Dituon
      Dituon
    • RE: 怎么获取QQ用户头像?

      Mirai可以获取User实例获取用户头像,虽然也是拼接字符串,但至少不用自己手动拼接

      发布在 开发交流
      Dituon
      Dituon
    • RE: QQ群bot官方接口,与使用体验

      https://docs.qq.com/sheet/DRE55cEtzdkh1UmRR?tab=BB08J2

      一些相关问题和回复

      发布在 开发交流
      Dituon
      Dituon
    • RE: QQ群bot官方接口,与使用体验

      @KJZH001 我的秋秋 2544193782 如果其它人加群我半小时内没同意,就是被腾讯吞掉了,可以加我好友

      发布在 开发交流
      Dituon
      Dituon
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 14
    • 15
    • 5 / 15