fix modifying body content encoding

This commit is contained in:
wanghongenpin
2024-03-24 03:26:46 +08:00
parent 620fc9a2be
commit 24bb72cb39
3 changed files with 5 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ import 'dart:convert';
import 'dart:io';
import 'package:network_proxy/network/http/http.dart';
import 'package:network_proxy/network/http/http_headers.dart';
import 'package:network_proxy/network/util/file_read.dart';
import 'package:network_proxy/network/util/logger.dart';
import 'package:network_proxy/utils/lang.dart';
@@ -368,6 +369,7 @@ class RequestRewrites {
return item.value ?? '';
}));
message.headers.remove(HttpHeaders.CONTENT_ENCODING);
message.headers.contentLength = message.body!.length;
return;
}

View File

@@ -4,6 +4,7 @@ import 'dart:io';
import 'package:desktop_multi_window/desktop_multi_window.dart';
import 'package:flutter_js/flutter_js.dart';
import 'package:network_proxy/network/http/http.dart';
import 'package:network_proxy/network/http/http_headers.dart';
import 'package:network_proxy/network/util/logger.dart';
import 'package:path_provider/path_provider.dart';
@@ -307,6 +308,7 @@ async function onResponse(context, request, response) {
map['headers'].forEach((key, value) {
response.headers.add(key, value);
});
response.headers.remove(HttpHeaders.CONTENT_ENCODING);
response.body = map['body'] == null ? null : utf8.encode(map['body'].toString());
return response;
}

View File

@@ -375,7 +375,7 @@ class _ScriptEditState extends State<ScriptEdit> {
//新增
if (widget.scriptItem == null) {
var scriptItem = ScriptItem(true, nameController.text, urlController.text);
(await ScriptManager.instance).addScript(scriptItem, script.text);
await (await ScriptManager.instance).addScript(scriptItem, script.text);
} else {
widget.scriptItem?.name = nameController.text;
widget.scriptItem?.url = urlController.text;