Перейти к содержанию
Fire Monkey от А до Я

unicorn

Пользователи
  • Постов

    6
  • Зарегистрирован

  • Посещение

Активность репутации

  1. Like
    unicorn отреагировална krapotkin в TNetHTTPClient и JSON-RPC   
    от души рекомендую заменить TJSONObject на XSuperObject https://github.com/onryldz/x-superobject
    код будет таким примерно
    uses   XSuperObject; ... procedure TForm1.b1Click(Sender: TObject); var   x:ISuperObject;   arr:ISuperArray; str:string; begin   X:=TSuperObject.Create();   X.S['jsonrpc'] := '2.0';   X.S['method'] := 'get_accounts';   X.I['id'] := 1;   arr:=TSuperArray.Create();   arr.Add('captain');   X.A['params']:=arr; ... str:=X.AsJSON(); ... но для начала вам нужно убедиться, что для правильного запроса правильный ответ. ваша строка с образцом не совпадает только в id
    у вас это строка, а в приведенных примерах - число. может, в этом проблема 
    h:=THTTPClient.Create(); //  h.Accept := 'application/json' //  h.AcceptCharSet := 'UTF-8';   src:=TStringStream.Create('{"jsonrpc":"2.0","method":"get_accounts","id":1,"params":["captain"]}');   res:=TStringStream.Create();   resp:=h.Post(URL,src,res);   if resp.StatusCode=200 then   begin     ShowMessage('Ответ'+sLineBreak+res.DataString);   end;   FreeAndNil(h);   FreeAndNil(res);   FreeAndNil(src); так же может быть, нужно правильно указывать кодировку запроса-ответа и другие заголовки HTTP
    проверьте этот код. а потом уже делайте JSON любым способом
×
×
  • Создать...