I am trying to post an image in third party tool using below code, but getting an error" An error occurred: Unable to retrieve security descriptor for this frame."
Can any one please help me, how to resolve this and what exactly that error meaning? Thank you in advance
<script runat="server"> Platform.Load("Core", "1.1.5"); var imageBase64 = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QMERXhpZgAATU0AKgAAAAgABAE7AAIAAAATAAABSodpAAQAAAABAAABXpydAAEAAAAmAAAC1uocAAcAAAEMAAAAPgAAAAAc6gAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUmFqaXRoYSBNYW50aGFwdXJpAAAABZADAAIAAAAUAAACrJAEAAIAAAAUAAACwJKRAAIAAAADNjcAAJKSAAIAAAADNjcAAOocAAcAAAEMAAABoAAAAAAc6gAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjAyNDowNzowNCAxNjo1NTo1N"; var textMessage = "Sample Post Text"; var accessToken = "XXX"; // Replace with your actual access token var ownerUrn = "urn:li:person:XXX"; // Replace with your person URN if (textMessage && imageBase64) { try { // Step 1: Register the upload var apiEndpoint = "https://api.linkedin.com/v2/assets?action=registerUpload";var registerUploadPayload = '{"registerUploadRequest": {"recipes": ["urn:li:digitalmediaRecipe:feedshare-image"], "owner": "urn:li:person:XXX", "serviceRelationships": [{"relationshipType": "OWNER", "identifier": "urn:li:userGeneratedContent"}]}}'; var registerReq = new Script.Util.HttpRequest(apiEndpoint); registerReq.method = "POST"; registerReq.emptyContentHandling = 0; registerReq.retries = 2; registerReq.continueOnError = true; registerReq.contentType = "application/json"; registerReq.setHeader("Authorization", "Bearer " + accessToken); registerReq.postData = registerUploadPayload; var registerResp = registerReq.send(); var registerRespJson = Platform.Function.ParseJSON(registerResp.content); var uploadUrl = registerRespJson.value.uploadMechanism["com.linkedin.digitalmedia.uploading.MediaUploadHttpRequest"].uploadUrl; var assetUrn = registerRespJson.value.asset; var imageUploadReq = new Script.Util.HttpRequest(uploadUrl); imageUploadReq.method = "PUT"; imageUploadReq.emptyContentHandling = 0; imageUploadReq.retries = 2; imageUploadReq.continueOnError = true; imageUploadReq.contentType = "application/octet-stream"; imageUploadReq.postData = Base64Decode(imageBase64); var imageUploadResp = imageUploadReq.send(); var apiEndpointPost = "https://api.linkedin.com/v2/ugcPosts"; var payload = '{"author": "urn:li:person:XXX","lifecycleState": "PUBLISHED","specificContent": {"com.linkedin.ugc.ShareContent": {"shareCommentary": {"text": "'+ textMessage +'"},"shareMediaCategory": "IMAGE","media": [{"status": "READY","description": {"text": "'+ textMessage +'"},"originalUrl": "'+ assetUrn +'","title": {"text": "'+ textMessage +'"}}]}},"visibility": {"com.linkedin.ugc.MemberNetworkVisibility": "PUBLIC"}}'; var req = new Script.Util.HttpRequest(apiEndpointPost); req.method = "POST"; req.emptyContentHandling = 0; req.retries = 2; req.continueOnError = true; req.contentType = "application/json"; req.setHeader("X-Restli-Protocol-Version", "2.0.0"); req.setHeader("Authorization", "Bearer " + accessToken); req.postData = payload; var resp = req.send(); Platform.Response.Write('Response: '+ resp.content); } catch (ex) { Platform.Response.Write("An error occurred: " + ex.message +"<br>"); } }</script>