2014-01-30 5 views
1

서버 쪽 응용 프로그램에 Dart 조각이 있고 MySql에서 제공 한지도를 JSON 유형 구조로 변환하여이 데이터를 보내는 방법을 모릅니다. 클라이언트에게.
보안 성 : Sql- 주사 방식 없음;
쉬운 : 문자열을 문자열 분리 기호 ('또는')가 들어 있고 간단한 연결을 허용하지 않는다는 점을 감안하여 데이터를 변환하는 몇 줄의 코드.
클라이언트에서 JSON 문자열을 디코드합니다. 양식을 채울 을이 서버 루틴이다.서버에서 클라이언트로 MySql 데이터를 안전하게 전송할 수 있습니다.

내가 print("FirstName: ${row[0]}, lastName: ${row[1]}, Age: ${row[2]}");
나는 내가에 클라이언트에 변환 할 수있는 뭔가로 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); 
} 

JSON- 무언가. 고객이 있음 :

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"} 
} 

방법을 보여주는 코드 줄을 누군가가 사용할 수 있습니까? 또는 몇 가지 실제 사례가있는 기사를 보여 주시겠습니까? 나는 다트의 최신 버전을 실행 중입니다.
저는 (15 년 동안) VBasic에서 데스크톱 응용 프로그램을 작성하여 변환하려고했습니다.

+0

의 주입 부분에 대한 나와프 Alsulami에서 답을 기다리는

나는 당신이 필요로하는 모든 여기에 StackOverflow에 생각합니다. 검색 기능 만 사용하십시오. '나에게 몇 가지 코드'질문은 주제에 달려있다. –

+0

그렇다면 다음과 같이 질문하십시오. SqlJocky에서 반환 한 MySql 맵을 DART 루틴에서 Jason-map으로 변환 할 수있는 DART 루틴은 무엇입니까? – Martin

+0

안전한 전송을 위해 SSL 암호화를 사용하십시오. –

답변

1

stackoverflow에 JSON 인코딩에 대한 해결책을 찾았습니다. sql-table을 설명하는 클래스의 모든 필드를 mySql으로 얻은 결과로 설정하고 직렬화하십시오. 모든 행을 연결하십시오. 그런 다음 문자열을 클라이언트에 전달하십시오. 질문