【问题标题】:i want to upload images on imgbb with custom name我想用自定义名称在 imgbb 上上传图片
【发布时间】:2021-12-28 10:20:07
【问题描述】:

我想使用自定义名称的 API 在 imgbb 上上传图片。
我当前的 HTML 是:

<input type="text" name="img_name" id="name" accept="text/*">
<input type="file" id="input_img" accept="image/*">
<input type="submit" value="Send" onclick="fileChange()">

而我现在的 JS 是:

function fileChange(){
  var file = document.getElementById('input_img');
  var imgname = document.getElementById('name');
  var form = new FormData();
  form.append("image", file.files[0])

    
    var settings = {
      "url": "https://api.imgbb.com/1/upload?key=(API CODE)",
      "method": "POST",
      "timeout": 0,
      "processData": false,
      "mimeType": "multipart/form-data",
      "contentType": false,
      "data": form
    };
    
    
    $.ajax(settings).done(function (response) {
      console.log(response);
      var jx = JSON.parse(response);
      console.log(jx.data.url);
    
    
    });
}

当我上传图片时,它将使用图片默认名称上传,但我想给它自定义名称。
当前结果:
https://i.stack.imgur.com/bbKZb.jpg

我想要什么:
https://i.stack.imgur.com/9BesZ.jpg

【问题讨论】:

    标签: javascript jquery ajax forms


    【解决方案1】:

    根据api document.

    名称(可选) 文件名,如果上传带有 POST 和 multipart / form-data 的文件,则会自动检测到该名称

    您应该在网址中添加&amp;name=yourName 以更改上传名称

    var settings = {
      "url": "https://api.imgbb.com/1/upload?key=(API CODE)&name="+ $('#name').val(),
      "method": "POST",
      "timeout": 0,
      "processData": false,
      "mimeType": "multipart/form-data",
      "contentType": false,
      "data": form
    };
    

    【讨论】:

    • 你是对的,但我想每次都改变它。这意味着我想在我的 HTML 中输入名称,然后我想成为我上传的图像上的那个名称。
    • @Xavid 好的,我编辑了我的答案
    • 兄弟我也想加个通知。这意味着当某人成功上传图片时,他/她将收到您的图片已成功提交的通知。你能帮帮我吗?
    猜你喜欢
    • 1970-01-01
    • 2019-07-26
    • 1970-01-01
    • 2013-04-01
    • 2014-05-04
    • 1970-01-01
    • 2014-04-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多