You need to sign in to do that
Don't have an account?
Vineetz
Unable to use ajax call in Salesforce Canvas app. I am using Sfdc.canvas.client.ajax Please help !!
Hey all,
I have an app hosted on heroku that is trying to access Salesforce data layer.
I am trying to user Sfdc.canvas.client.ajax but im unable to get neither a SUCCESS or FAILURE from this call.
I also am not facing any error.
Please find my code below :
________________________________________________________________________
I HAVE ADDED THE FOLLOWING LIBRARIES :
________________________________________________________________________
<script type="text/javascript" src="/sdk/js/canvas-all.js"></script>
<script type="text/javascript" src="/sdk/js/client.js"></script>
<script type="text/javascript" src="/sdk/js/xd.js"></script>
<script type="text/javascript" src="/sdk/js/oauth.js"></script>
<script type="text/javascript" src="/sdk/js/cookies.js"></script>
<script type="text/javascript" src="/scripts/json2.js"></script>
<script type="text/javascript" src="/scripts/chatter-talk.js"></script>
____________________________________________________________________________________________
AJAX CALL :
_____________________________________________________________________________________________
/* VIN */
function doFunction(){
var sr = JSON.parse('<%=signedRequestJson%>');
alert(Object.values(sr));
alert(JSON.stringify(sr, undefined, 2));
alert(JSON.stringify(sr.client.oauthToken, undefined, 2));
console.debug('xaxa' + Object.values(sr));
console.log("XAXA" + Object.values(sr));
//var sizes = Sfdc.canvas.client.size();
//alert('CLIENT SIZE' + sizes);
var csId =sr.context.environment.parameters.contactid;
alert('csID' + csId);
//Creating a variable with query Structure
var queryUrl= sr.context.links.queryUrl+"?q=SELECT+id+from+Contact+where+id='"+csId+"'";
//var xaxaurl = sr.context.links.queryUrl+"?q=SELECT+ID,NAME+FROM+CASE";
alert('QUERYCALL' + queryUrl );
//alert('OOGA WOOGA BOOGA' );
// Below block makes an AJAX call to Salesforce
Sfdc.canvas.client.ajax(queryUrl,
{ client : sr.client, //Send the req to signed request Client which has the OAuth – The Same request that requested Post to TMG - reused
method: 'GET', // GET method will request the fetched record details back from Salesforce
contentType: "application/json",
token : sr.client.oauthToken,
success : function(data) {
alert('SUCCESS');
console.debug("SUCCESS");
console.log("SUCCESS");
},
failure : function(error) {
alert('FAILURE');
console.debug("SUCCESS");
console.log("SUCCESS");
}
});
}
Please let me know if theres anything wrong that i'm doing ? anything missing from my end ?
Also can anyone provide me a link with the latest SDK with all the JS libraries (THE SDK in Canvas framework on github doesnt have the libraries)
Any help is appreciated.
I have an app hosted on heroku that is trying to access Salesforce data layer.
I am trying to user Sfdc.canvas.client.ajax but im unable to get neither a SUCCESS or FAILURE from this call.
I also am not facing any error.
Please find my code below :
________________________________________________________________________
I HAVE ADDED THE FOLLOWING LIBRARIES :
________________________________________________________________________
<script type="text/javascript" src="/sdk/js/canvas-all.js"></script>
<script type="text/javascript" src="/sdk/js/client.js"></script>
<script type="text/javascript" src="/sdk/js/xd.js"></script>
<script type="text/javascript" src="/sdk/js/oauth.js"></script>
<script type="text/javascript" src="/sdk/js/cookies.js"></script>
<script type="text/javascript" src="/scripts/json2.js"></script>
<script type="text/javascript" src="/scripts/chatter-talk.js"></script>
____________________________________________________________________________________________
AJAX CALL :
_____________________________________________________________________________________________
/* VIN */
function doFunction(){
var sr = JSON.parse('<%=signedRequestJson%>');
alert(Object.values(sr));
alert(JSON.stringify(sr, undefined, 2));
alert(JSON.stringify(sr.client.oauthToken, undefined, 2));
console.debug('xaxa' + Object.values(sr));
console.log("XAXA" + Object.values(sr));
//var sizes = Sfdc.canvas.client.size();
//alert('CLIENT SIZE' + sizes);
var csId =sr.context.environment.parameters.contactid;
alert('csID' + csId);
//Creating a variable with query Structure
var queryUrl= sr.context.links.queryUrl+"?q=SELECT+id+from+Contact+where+id='"+csId+"'";
//var xaxaurl = sr.context.links.queryUrl+"?q=SELECT+ID,NAME+FROM+CASE";
alert('QUERYCALL' + queryUrl );
//alert('OOGA WOOGA BOOGA' );
// Below block makes an AJAX call to Salesforce
Sfdc.canvas.client.ajax(queryUrl,
{ client : sr.client, //Send the req to signed request Client which has the OAuth – The Same request that requested Post to TMG - reused
method: 'GET', // GET method will request the fetched record details back from Salesforce
contentType: "application/json",
token : sr.client.oauthToken,
success : function(data) {
alert('SUCCESS');
console.debug("SUCCESS");
console.log("SUCCESS");
},
failure : function(error) {
alert('FAILURE');
console.debug("SUCCESS");
console.log("SUCCESS");
}
});
}
Please let me know if theres anything wrong that i'm doing ? anything missing from my end ?
Also can anyone provide me a link with the latest SDK with all the JS libraries (THE SDK in Canvas framework on github doesnt have the libraries)
Any help is appreciated.