flutterWeb 请求跨域问题解决方案

flutterWeb 请求跨域问题

在这里插入图片描述
在这里插入图片描述

项目安装shelf_proxy依赖库

地址:https://pub.dev/packages/shelf_proxy
虽然start数不多,但是是dart官方提供的包,请放心食用!

在lib目录下新建proxy.dart文件

import 'package:shelf/shelf_io.dart' as shelf_io;
import 'package:shelf_proxy/shelf_proxy.dart';
//前端页面访问本地域名
const String host = 'localhost';
//前端页面访问本地端口号
const int port= 8080;
//proxy域名或IP地址
const String TargetUrl = 'http://merlion.vip.com';

Future main() async {
  var server = await shelf_io.serve(
    proxyHandler(TargetUrl),
    host,
    port,
  );
  // 添加跨域头
  server.defaultResponseHeaders.add('Access-Control-Allow-Origin', '*');
  server.defaultResponseHeaders.add('Access-Control-Allow-Credentials', true);

  print('Serving is running at http://${server.address.host}:${server.port}');
}

命令行启动代理服务

命令行输入

dart ./lib/proxy.dart
Serving  is running at http://localhost:8080
启动dart本地代理服务

查看请求是否正常

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值