Setting HeaderFields for Bearer Token to make API requests

조회 수: 21 (최근 30일)
Noah Walcutt
Noah Walcutt 2019년 6월 3일
답변: Sam Oliver 2023년 2월 21일
I need to set the Bearer Token field to 'Authorization : "Bearer <token>"' to pull data from an API however I have not been able to set this value. I have tried using the weboptions() function, but the HeadersFields field will not accept strings -- it appears to only accept numeric-type.
r= weboptions;
r.HeaderFields = 'Authorization : "Bearer <token>"';
This gives an error (r2019a). What's wrong with this statment?

답변 (2개)

Mahsa Eshtehardi
Mahsa Eshtehardi 2019년 11월 5일
You should add brackets:
'HeaderFields',{'Authorization', ['Bearer ' token]});

Sam Oliver
Sam Oliver 2023년 2월 21일
You can make a request using Bearer token base authentication using the following code.
function [resp, a, req] = webread2(URL,Message,BearerToken)
MyBody = matlab.net.http.MessageBody(Message);
MyHTTPOptions = matlab.net.http.HTTPOptions();
Request = matlab.net.http.RequestMessage;
Request.Method = 'POST';
Request.Header = matlab.net.http.HeaderField('Content-Type','application/json','Authorization', ['Bearer ' BearerToken]);
Request.Body = MyBody;
uri = matlab.net.URI(URL);
[resp, a, req] = Request.send(uri,MyHTTPOptions);
end

카테고리

Help CenterFile Exchange에서 Call Web Services from MATLAB Using HTTP에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by