1. Go to "setup/Develop/Apex Class"
2. Click "new"
3. Write code as following:
4. Go to "setup/Security Controls/Remote Site Settings"
5. Click "New remote site" & enter the URL that you want to invoke from apex class.
6. Invoke method "ApexClass_1.c1" from wherever you want.
7. An example of invoke url in salesforce from apex sObjects trigger options
8. Go to "setup/Customize/Accounts/Triggers"
9. Click "new"
10. Write the following code:
11. Once you create a new account the url would be invoked in a short time (Also you could write code for update & delete)
12. Apex trigger documentation: https://developer.salesforce.com/trailhead/en/apex_triggers/apex_triggers_intro
2. Click "new"
3. Write code as following:
public class ApexClass_1 { @Future(callout=true) public static void c1(String Account_ID) { String name = ''; try { HttpRequest req = new HttpRequest(); req.setEndpoint('http://www.yahoo.com'); req.setMethod('POST'); req.setBody('Account_ID='+EncodingUtil.urlEncode(Account_ID, 'UTF-8')+'&other_param='+EncodingUtil.urlEncode('OTHER PARAM VALUE', 'UTF-8')); req.setCompressed(true); /* If you want to send basic authentication */ String username = 'myname'; String password = 'mypwd'; Blob headerValue = Blob.valueOf(username + ':' + password); String authorizationHeader = 'BASIC ' + EncodingUtil.base64Encode(headerValue); req.setHeader('Authorization', authorizationHeader); Http http = new Http(); HTTPResponse res = http.send(req); name = 'Status_Code=' + res.getStatusCode(); String responseBody = res.getBody(); } catch(System.CalloutException e) { System.debug('Callout error: '+ e); name = ('Error=' + e.getMessage()).substring(0, 20); } /* Reading account object */ Account account = [SELECT Id FROM Account WHERE Id = :Account_ID]; account.Name = name; update op; } }
4. Go to "setup/Security Controls/Remote Site Settings"
5. Click "New remote site" & enter the URL that you want to invoke from apex class.
6. Invoke method "ApexClass_1.c1" from wherever you want.
7. An example of invoke url in salesforce from apex sObjects trigger options
8. Go to "setup/Customize/Accounts/Triggers"
9. Click "new"
10. Write the following code:
trigger TriggerActionName on Account (before insert, after insert, after delete) { if (Trigger.isInsert) { if (Trigger.isAfter) { for (Account a : Trigger.New) { ApexClass_1.c1(a.Id); } } } }
11. Once you create a new account the url would be invoked in a short time (Also you could write code for update & delete)
12. Apex trigger documentation: https://developer.salesforce.com/trailhead/en/apex_triggers/apex_triggers_intro
No comments:
Post a Comment