小编Tim*_*ard的帖子

使用 axios 将 Blob URL 转换为文件对象

我有一个图像裁剪器,可以为每个裁剪创建一个 blob 文件。

当用户完成裁剪后,他点击一个成功按钮,我得到一个如下所示的 URL:blob: https://localhost:5001/4434606b-29c4-483d-a1fc-1cefe50a3e3a “。因为我需要一个文件对象(所以我可以将其发布到我的服务器)我使用以下代码将此 blob 转换为实际文件对象:

const file = await fetch(blobUrl).then(r => r.blob()).then(blobFile => new File([blobFile], fileName, { type: blobFile.type }));
Run Code Online (Sandbox Code Playgroud)

此代码有效,但不幸的是,我需要提供 IE11 支持,并且由于不支持 fetch(并且 polyfills 似乎不适用于此 fetch 调用)我想将此语句迁移到 axios(我已经在我的应用)。

这是我尝试过的:

axios.get(blobUrl).then(r => r.blob()).then(blobFile => new File([blobFile], fileName, { type: blobFile.type }));
Run Code Online (Sandbox Code Playgroud)

当我查看第一次调用 ( then(r => r.blob())的响应时,我得到如下信息: 在此处输入图片说明

我认为这是因为图像无法在控制台中显示,但是当我尝试调用“r.blob()”时,我得到了这个:

r.blob 不是函数

如何更改我的 axios 调用,使其像上面的 fetch 调用一样工作?

旁注:我不知道我的回复将使用哪种文件类型(除了它是图像),所以它可能是 png、jpg、gif 等。

javascript fetch reactjs axios

8
推荐指数
2
解决办法
1万
查看次数

这个css选择器有一个简短的形式吗?

我之前偶然发现了很多次,我一直想知道是否可以用更简单,更少冗余的方式来写这个.

我们假设我们有这个HTML:

<div class="wrapperClass">
    <div class="someClass">
        <h1>This is a title</h1>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

如果我想要设置<h1>元素的样式,我会这样做:

.wrapperClass .someClass h1 { 
    color: red;
}
Run Code Online (Sandbox Code Playgroud)

让我们假设用户也有可能使用a <h2>, <h3>, <h4>, <h5> or even a <h6>,我们也需要覆盖这些情况.

我的CSS语句现在看起来像这样:

.wrapperClass .someClass h1, .wrapperclass .someClass h2, .wrapperClass .someClass h3 ...
Run Code Online (Sandbox Code Playgroud)

这个陈述真的很长; 这就是为什么我想知道这些案件是否有简短形式.

html css css-selectors

3
推荐指数
1
解决办法
173
查看次数

.Net Core 2.2 Web API路由

我有以下控制器,希望将其用作ajax帖子的Web API控制器,以从用户表中检索数据。

namespace MyProjectName.Controllers.API
{
    [Route("api/[controller]")]
    [ApiController]
    public class UsersController : ControllerBase
    {
        private readonly myContext _context;
        public UsersController(myContext context)
        {
            _context = context;
        }

        [HttpGet]
        public List<string> GetInstitutionNamesById(int id)
        {
            // returns desired list
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,我希望此函数的路由如下所示:/ api / users / getinstitutionnamesbyid,但显然它似乎只是/ api / users,我确实感到困惑(如果我添加其他HttpGet函数会怎样?)。

谁能解释我在做什么错?我不是按预期方式使用Web Api控制器吗?我的选路错了吗?

提前致谢。

c# asp.net-web-api-routing asp.net-core-mvc asp.net-core asp.net-core-2.2

2
推荐指数
1
解决办法
1913
查看次数