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

DropBox Rest


Ufomaster

Вопрос

Рекомендуемые сообщения

  • 0
  • Модераторы
33 минуты назад, Ufomaster сказал:

как убрать перекодировку в  header "Authorization": "Bearer%20******************************

? что бы пробел оставался пробелом 

%20 это и есть пробел, веб серверы его примут правильно.

Но если это мешает, то можно через Replace заменить %20 на пробел

Ссылка на комментарий
  • 0
10 минут назад, ZuBy сказал:

%20 это и есть пробел, веб серверы его примут правильно.

Но если это мешает, то можно через Replace заменить %20 на пробел

Передаю

 RESTRequest1.Params.AddHeader('Authorization', 'Bearer Zjjt*******************************');

 RESTRequest1.Execute;

Как сделать что бы пробел остался пробелом ?

Ссылка на комментарий
  • 0
  • Модераторы
3 минуты назад, Ufomaster сказал:

Передаю

 RESTRequest1.Params.AddHeader('Authorization', 'Bearer Zjjt*******************************');

 RESTRequest1.Execute;

Как сделать что бы пробел остался пробелом ?

ну не положено отправлять на сервер пробел, для этого все параметры проходят через UrlEncode

Ссылка на комментарий
  • 0
39 минут назад, ZuBy сказал:

ну не положено отправлять на сервер пробел, для этого все параметры проходят через UrlEncode

что это за ошибка помогите ? 

First chance exception at $753436EA. Exception class EEncodingError with message 'No mapping for the Unicode character exists in the target multi-byte code page'. Process Project1.exe (5996)

Ссылка на комментарий
  • 0
В 29.11.2016 в 23:46, Ufomaster сказал:

Глюк в берлине без апдейта. В сиетле все работает отлично.

Это не решение вопроса...

Поделитесь кодом, пожалуйста, возможно проблему удастся решить другим способом. Помимо смены версии IDE.

Ссылка на комментарий
  • 0
В 01.12.2016 в 17:03, kami сказал:

Это не решение вопроса...

Поделитесь кодом, пожалуйста, возможно проблему удастся решить другим способом. Помимо смены версии IDE.

procedure TForm1.Button1Click(Sender: TObject);
var
  SomeStream : TMemoryStream;

begin

  RESTRequest1.Method:=TRESTRequestMethod.rmGET;
  RESTClient1.BaseURL:='https://content.dropboxapi.com/2/files/download';

  with RESTRequest1.Params.AddItem do begin
    name := 'Authorization';
    Value := 'Bearer Z*************************'; // настоящий токен
    ContentType := ctNone;
    Kind := pkHTTPHEADER;
    Options := [poDoNotEncode];
  end;

   with RESTRequest1.Params.AddItem do begin
    name := 'Dropbox-API-Arg';
    Value := '{"path": "/имя файла на боксе"}';
    ContentType := ctNone;
    Kind := pkHTTPHEADER;
    Options := [poDoNotEncode];
  end;

  RESTRequest1.Execute; 

  SomeStream := tmemorystream.Create;
              try
                Somestream.WriteData(RESTResponse1.RawBytes,Length(RESTResponse1.RawBytes));
                SomeStream.SaveToFile('dowloaded.file');
              finally
                SomeStream.free;
              end;


end;
 

Ссылка на комментарий
  • 2
  • Модераторы

на например можно вот так

2016-12-06_21-00-39.png

DropBox_test.rar

UPDATE: Там не используется TRest** компоненты, я их не люблю. Поэтому написал по своему.

В мемо показана картинка, другого ничего не было на дропбоксе, думаю разберетесь в коде

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...