当前位置: 首页 > article >正文

【.ner core】 配置使用百度编辑器

流程参照:胡枫/UEditorNetCore

# 关于UEditorNetCore


百度在线编辑器UEditor在ASP.NET Core下的服务端,使用简单,易于扩展。   
相关文章:http://www.cnblogs.com/durow/p/6116393.html    
UEditor官网:http://ueditor.baidu.com/website/index.html    
UEditor源代码:https://github.com/fex-team/ueditor   

 
# 安装


```
Install-Package UEditorNetCore
```

# 使用


## 1.在Startup.cs的ConfigureServices方法中添加UEditorNetCore服务


``` C#
public void ConfigureServices(IServiceCollection services)
{
    //第一个参数为配置文件路径,默认为项目目录下config.json
    //第二个参数为是否缓存配置文件,默认false
    services.AddUEditorService()
    services.AddMvc();
}
```

## 2.添加Controller用于处理来自UEditor的请求


``` C#
[Route("api/[controller]")] //配置路由
public class UEditorController : Controller
{
    private UEditorService ue;
    public UEditorController(UEditorService ue)
    {
        this.ue = ue;
    }

    public void Do()
    {
        ue.DoAction(HttpContext);
    }
}
```

## 3.修改前端配置文件ueditor.config.js


修改serverUrl为第2步Controller中配置的路由,使用例子中的路由按照以下配置:
``` json
serverUrl:"/api/UEditor"
```

## 4.修改服务端配置config.json


上传类的操作需要配置相应的PathFormat和Prefix,在示例中部署在web根目录,因此Prefix都设置为"/"。使用时要根据具体情况配置。
例如示例中图片上传的配置如下:
``` json
"imageUrlPrefix": "/", /* 图片访问路径前缀 */
"imagePathFormat": "upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", 
```

## 5.添加javascript引用


``` html
<script type="text/javascript" charset="utf-8" src="~/lib/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8" src="~/lib/ueditor/ueditor.all.min.js"> </script>
<script type="text/javascript" charset="utf-8" src="~/lib/ueditor/lang/zh-cn/zh-cn.js"></script>
```

# 扩展


如果需要扩展action,可以在Startup.cs的ConfigureServices方法中进行。


## 添加新的action


``` C#
public void ConfigureServices(IServiceCollection services)
{
    services.AddUEditorService()
        .Add("test", context =>
        {
            context.Response.WriteAsync("from test action");
        })
        .Add("test2", context =>
        {
            context.Response.WriteAsync("from test2 action");
        });
    services.AddMvc();
}
```
以上代码扩展了名字为test和test2两个action,作为示例仅仅返回了字符串。在扩展时可以读取Config配置,并使用已有的Handler。

## 覆盖现有action


上面的Add方法除了添加新action外还可以覆盖现有action。例如现有的action可能不符合你的要求,可以Add一个同名的action覆盖现有的。

## 移除action


如果要移除某个action,可以使用Remove方法。
``` C#
public void ConfigureServices(IServiceCollection services)
{
    services.AddUEditorService()
        .Remove("test");
    services.AddMvc();
}
```
以上代码移除了名为test的action。
 


http://www.kler.cn/a/406401.html

相关文章:

  • Maven 依赖管理
  • 知识图谱介绍
  • 自由学习记录(23)
  • 深入理解 Spring Boot 的 CommandLineRunner 原理及使用
  • 合法三元数量计算
  • 为什么VScode不能连服务器,MobaXterm可以连
  • JavaScript中的this指向问题
  • 容器安全检测和渗透测试工具
  • 成都栩熙酷,电商服务新选择
  • 【SQL Server】华中农业大学空间数据库实验报告 实验七 数据查询
  • 【大语言模型】ACL2024论文-13 透过分裂投票的镜头:探索法律案例结果分类中的分歧、难度和校准
  • “AI玩手机”原理揭秘:大模型驱动的移动端GUI智能体
  • 【Redis 探秘】Redis 持久化机制:RDB 与 AOF
  • 特征融合篇 | CARAFE:轻量级通用上采样算子,可提高目标检测性能
  • 设计模式在项目中有用过吗?怎么用的?
  • 数据结构 (3)线性表的概念及其抽象数据类型定义
  • go项目中比较好的实践方案
  • 【qt版本概述】
  • js前端加密方案库Crypto-js之aes的使用
  • 速通前端篇 —— CSS
  • c++中操作数据库的常用函数
  • 前端vue调试样式方法
  • 前端 px、rpx、em、rem、vh、vw计量单位的区别
  • 【D3.js in Action 3 精译_040】4.4 D3 弧形图的绘制方法
  • 准备阶段 Statistics界面性能分析
  • uniapp H5上传图片前压缩