Appsmith改造本地不需要通过docker启动访问

Appsmith不使用nginx代理

当本地启动appsimth调试,需要在启动一个docker、nginx才能访问后台,大大的增加的调试的难度。针对这个问题我们来对项目进行一下改造

Appsmith前端改造

打开前端项目找到Api.ts
可以看到baserUrl只有/api,在打开nginx.conf配置文件
在这里插入图片描述
我们发现是当前端访问/api的时候通过nginx转发到后台请求接口。
流程已经梳理明白接下来开始改造。

Appsmith改造

1、将baseUrl补全如下图所示
在这里插入图片描述
启动前端项目浏览器访问前端报错请求跨域。
在这里插入图片描述
打开server项目配置跨域设置

@Configuration
public class RouteConfig {

    private static final String ALLOWED_HEADERS = "x-requested-with, authorization, Content-Type, Authorization, credential, X-XSRF-TOKEN,token,username,client";
    private static final String ALLOWED_METHODS = "GET,POST,OPTIONS,PUT,DELETE"; // 不可以*号代替
    private static final String ALLOWED_Expose = "*";
    private static final String MAX_AGE = "18000L";

    @Bean
    @Order(-200) //保证filter在AuthFilter之前
    public WebFilter corsFilter() {
        return (ServerWebExchange ctx, WebFilterChain chain) -> {
            ServerHttpRequest request = ctx.getRequest();
            if (CorsUtils.isCorsRequest(request)) {
                String originHeader=request.getHeaders().getOrigin();
                ServerHttpResponse response = ctx.getResponse();
                HttpHeaders headers = response.getHeaders();
                headers.add("Access-Control-Allow-Origin", originHeader);
                headers.add("Access-Control-Allow-Methods", ALLOWED_METHODS);
                headers.add("Access-Control-Max-Age", MAX_AGE);
                headers.add("Access-Control-Allow-Headers", ALLOWED_HEADERS);
                headers.add("Access-Control-Expose-Headers", ALLOWED_Expose);
                headers.add("Access-Control-Allow-Credentials", "true");
                if (request.getMethod() == HttpMethod.OPTIONS) {
                    response.setStatusCode(HttpStatus.OK);
                    return Mono.empty();
                }
            }
            return chain.filter(ctx);
        };
    }

重新启动后台项目,本地访问正常。

注意事项

登录、等其他接口也需要补全http://127.0.0.1:8080/,还有很多可以改造的地方以后在慢慢补充。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

stayhungerstayflush

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值