Trying to write an Apex method that accesses Chatter REST api using this technique: https://chintanblog.blogspot.com/2017/02/call-salesforce-rest-api-from-apex.html
This method is @AuraEnabled - so it can be called from a Lightning Component.
The problem is I'm getting a 401:
System.CalloutException: [{"message":"This session is not valid for use with the REST API","errorCode":"INVALID_SESSION_ID"}]
String sfdcURL = URL.getSalesforceBaseUrl().toExternalForm();
String restAPIURL = sfdcURL + '/services/data/v41.0/chatter/feed-elements';
HttpRequest httpRequest = new HttpRequest();
httpRequest.setMethod('POST');
httpRequest.setHeader('Authorization', 'OAuth ' + UserInfo.getSessionId());
httpRequest.setHeader('Authorization', 'Bearer ' + UserInfo.getSessionId());
httpRequest.setEndpoint(restAPIURL);
httpRequest.setBody('test');
Http http = new Http();
HttpResponse httpResponse = http.send(httpRequest);
Can anyone tell me what I'm doing wrong?