У меня есть часть Dart в моем приложении на стороне сервера, и я не знаю, как преобразовать карту, доставленную MySql в структуру типа JSON, чтобы отправить эти данные для клиента.
Безопасность: без возможности Sql-инъекции;
easy: всего несколько строк кода для преобразования данных, принимая во внимание, что строка содержит строковые разделители ('или "), которые не допускают простой concat.
На клиенте я декодирую строку JSON и заполнить форму это сервер рутина:.Безопасная и простая передача данных MySql от сервера к клиенту
void handlePost(HttpRequest req) {
HttpResponse res = req.response;
req.listen((List<int> buffer) {
addCorsHeaders(res);
AsciiDecoder a = new AsciiDecoder();
String s = a.convert(buffer); // contains key data in JSON-string
Map data = JSON.decode(s);
if (data.containsKey("key")){
var r1 = data{"key"};
pool.query('select fi, la, age from person where keyT =' + r1).then((result) {
result.forEach((row) {
print("FirstName: ${row[0]}, lastName: ${row[1]}, Age: ${row[2]}");
closeRes(res, JSONdata);
});
});
}
else closeRes(res, "NOK missing key");
},
onError: printError);
}
Где я написал print("FirstName: ${row[0]}, lastName: ${row[1]}, Age: ${row[2]}");
Я бы написать код, который преобразует карту MySql во что-то, что я могу преобразовать в клиенте к JSON-something. На клиенте у меня есть:
void getDataFromServer(){
HttpRequest request = new HttpRequest(); // create a new XHR
request.onReadyStateChange.listen((_) {
if (request.readyState == HttpRequest.DONE &&
(request.status == 200 || request.status == 0)) {
extractJson(request.responseText); // output the response
}
});
request.open("POST", url, async: false);
request.send(jsonData); // POST string like: {"key":"12345"}
}
Может кто-нибудь некоторые строки кода, показывающие инструкции? или показать мне статью, в которой есть рабочий пример? Я запускаю новую версию Dart.
Я использовал (в течение 15 лет) для написания настольных приложений в VBasic, пытаясь теперь конвертировать.
Я думаю, что все, что вам нужно здесь, на StackOverflow. Просто используйте функцию поиска. «Дайте мне какой-то код», вопросы не соответствуют теме. –
Если это так, перечитайте мой вопрос как: какая процедура DART может преобразовать карту MySql, возвращаемую SqlJocky, в карту Джейсона. – Martin
Для безопасной передачи используйте SSL-шифрование. –