我一直在尝试登录网站https://nettilataus.turku.fi/nettilataus/faces/index.xhtml,以检查用户当前在他/她的公交卡上的积分。
我可以和邮递员一起登录:
除javax.faces.ViewState以外,form-data值是静态的,可以通过查看https://nettilataus.turku.fi/nettilataus/faces/index.xhtml登录参数轻松地对其进行检查。
现在,如果我尝试使用Dart达到同样的效果,我将始终收到500个内部错误。
这是代码
import 'package:dio/dio.dart';
Future<void> main() async {
final formData = FormData.fromMap({
'login:j_id_o_5': 'vieras',
'login:j_id_o_7': 'vieras',
'login:j_id_o_8': 'Kirjaudu',
'login_SUBMIT': '1',
});
final dio = Dio();
formData.fields.add(const MapEntry('javax.faces.ViewState',
'UV7pMYfHCvcz6gRaadsQJxlJHPcfhfWOLkGo83hLG1i5V/jd'));
final response = await dio.post(
'https://nettilataus.turku.fi/nettilataus/faces/index.xhtml',
data: formData,
);
print(response.data);
}