Facebook 将信息从LeadsBridge post发送到apex salesforce rest服务
我试图从与Facebook链接的LeadsBridge平台的集成中接收字段,因此我在Salesforce的apex上制作了一个RestService来获取信息,但LeadsBridge发送信息的方式似乎与Post json不同 这就是我想做的:Facebook 将信息从LeadsBridge post发送到apex salesforce rest服务,facebook,web-services,rest,apex,salesforce-service-cloud,Facebook,Web Services,Rest,Apex,Salesforce Service Cloud,我试图从与Facebook链接的LeadsBridge平台的集成中接收字段,因此我在Salesforce的apex上制作了一个RestService来获取信息,但LeadsBridge发送信息的方式似乎与Post json不同 这就是我想做的: @RestResource(urlMapping='/CarsyncLeadsBridge/*') global class CarsyncLeadsBridge{ @HttpPost global static Map<Str
@RestResource(urlMapping='/CarsyncLeadsBridge/*')
global class CarsyncLeadsBridge{
@HttpPost
global static Map<String,String> doPost(
String id, String created_time, String campaign_id, String adset_id,
String ad_id, String email, String full_name, String phone_number, String mensaje){
try {
MSystem.debug(id+' - '+full_name+' - '+created_time+' - '+campaign_id+' - '+adset_id+' - '+adset_id+' - '+ad_id+' - '+email+' - '+phone_number);
@RestResource(urlMapping='/CarsyncLeadsBridge/*'))
全局类CarsyncLeadsBridge{
@httpost
全局静态映射doPost(
字符串id、字符串创建时间、字符串活动id、字符串adset id、,
字符串广告id、字符串电子邮件、字符串全名、字符串电话号码、字符串mensaje){
试一试{
MSystem.debug(id+'-'+全名+'-'+创建的时间+'-'+活动id+'-'+adset\U id+'-'+adset\U id+'-'+ad\U id+'-'+电子邮件+'-'+电话号码);
但不起作用,LeadsBridge无法使用它,并且在使用之前会抛出错误,因此我尝试:
@RestResource(urlMapping='/CarsyncLeadsBridge/*')
global class CarsyncLeadsBridge{
@HttpPost
global static Map<String,String> doPost(){
try {
String id = apexpages.currentpage().getparameters().get('id');
String created_time = apexpages.currentpage().getparameters().get('created_time');
String campaign_id = apexpages.currentpage().getparameters().get('campaign_id');
String adset_id = apexpages.currentpage().getparameters().get('adset_id');
String ad_id = apexpages.currentpage().getparameters().get('ad_id');
String email = apexpages.currentpage().getparameters().get('email');
String full_name = apexpages.currentpage().getparameters().get('full_name');
String phone_number = apexpages.currentpage().getparameters().get('phone_number');
String mensaje = apexpages.currentpage().getparameters().get('mensaje');
System.debug(id+' - '+full_name+' - '+created_time+' - '+campaign_id+' - '+adset_id+' - '+adset_id+' - '+ad_id+' - '+email+' - '+phone_number);
@RestResource(urlMapping='/CarsyncLeadsBridge/*'))
全局类CarsyncLeadsBridge{
@httpost
全局静态映射doPost(){
试一试{
字符串id=apexpages.currentpage().getparameters().get('id');
字符串created_time=apexpages.currentpage().getparameters().get('created_time');
字符串campaign_id=apexpages.currentpage().getparameters().get('campaign_id');
字符串adset_id=apexpages.currentpage().getparameters().get('adset_id');
字符串ad_id=apexpages.currentpage().getparameters().get('ad_id');
字符串email=apexpages.currentpage().getparameters().get('email');
字符串full_name=apexpages.currentpage().getparameters().get('full_name');
字符串phone_number=apexpages.currentpage().getparameters().get('phone_number');
字符串mensaje=apexpages.currentpage().getparameters().get('mensaje');
系统调试(id+'-'+全名+'-'+创建的时间+'-'+活动id+'-'+adset id+'-'+adset id+'-'+广告id+'-'+电子邮件+'-'+电话号码);
这一个在LeadsBridge上是成功的,但当我尝试获取参数时,它们不存在,并产生一个Nullpointer异常。
当我从这个平台(LeadsBridge)的post方法接收信息时,任何人都知道我应该如何获取字段
谢谢你的帮助
PD:我在Google Chrome的ARC tester上尝试了这两种方法,效果很好。我看不出你在第一种方法中捕获了请求,你不需要,当你使用@RestResource时,这意味着apex服务会自动捕获它,在第二种方法中,我尝试使用apexpages.currentpage().getparameters().get('field'))我想我从来没有在我使用
RestRequest-request=RestContext.request;
和restreponse-response-response=RestContext.response;
然后序列化它的地方构建过一个