如何在Dart中处理跨域请求

蜗牛 互联网技术资讯 2024-05-08 15 0

在Dart中处理跨域请求通常需要设置服务器端的响应头来允许跨域请求。以下是一种常见的方法:

  1. 在服务器端添加如下代码来设置响应头:
import 'package:shelf/shelf.dart' as shelf;
import 'package:shelf/shelf_io.dart' as io;
import 'package:shelf_cors/shelf_cors.dart' as shelf_cors;

void main() {
  var handler = const shelf.Pipeline()
      .addMiddleware(shelf_cors.createCorsHeadersMiddleware())
      .addHandler(_echoRequest);

  io.serve(handler, 'localhost', 8080).then((server) {
    print('Serving at http://${server.address.host}:${server.port}');
  });
}

shelf.Response _echoRequest(shelf.Request request) {
  return shelf.Response.ok('Request for "${request.url}"');
}
  1. 在客户端代码中使用CORS请求发送跨域请求:
import 'dart:io';
import 'package:http/http.dart' as http;

void main() async {
  var response = await http.get('http://localhost:8080');
  print('Response status: ${response.statusCode}');
  print('Response body: ${response.body}');
}

通过这种方式,您可以在Dart中处理跨域请求并允许来自不同域的请求访问您的服务器端资源。您也可以根据具体的需求和情况来配置更多的CORS选项来限制或允许特定域的请求。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo6@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram