common.apex.runtime.impl.ExecutionException:来自服务器顶点的意外文件结尾

common.apex.runtime.impl.ExecutionException: Unexpected end of file from server apex

我正在尝试在 apex Salesforce 中调出休息服务,但是当我从 Salesforce 调用时效果不佳,已经使用 ARC Chrome 和 Java 程序进行了尝试我做的并且工作正常。 当我设置最大超时时给我这个错误。

common.apex.runtime.impl.ExecutionException: Unexpected end of file from server apex

当我在没有超时的情况下更改它时给我:

An unexpected error has occurred: Read timed out

所以我真的不知道发生了什么我使用相同的逻辑脚本调用另一个 Rest 服务并且它工作正常。

这是我到目前为止的鳕鱼:

@future (callout=true)
    public static void SendNitrosOautIncluded(Decimal cantidadNitros, String id_cuenta) {

        HttpRequest req = new HttpRequest();
        HttpResponse res = new HttpResponse();
        Http http = new Http();
        try {
            map<String, Endpoint__c> endPoints = Endpoint__c.getall();
            Endpoint__c endPoint = endPoints.get('PtxAddNitros');
            String endPointPtx= (String)endPoint.get('Endpoint__c');
            System.debug(endPointPtx+id_cuenta);
            //req.setTimeout(60000);
            req.setEndpoint(endPointPtx+id_cuenta);
            req.setMethod('POST');
            req.setHeader('Content-Type', 'application/json; charset=utf-8');                  
            JSONGenerator gen = JSON.createGenerator(true); 
            gen.writeStartObject();
            gen.writeNumberField('credits', cantidadNitros);        
            //MANAGE RESPONSE
            String objSended= gen.getAsString();
            System.debug(objSended);
            req.setBody(objSended);            
            res = http.send(req);            
            String resp=res.getBody();            
            System.debug(resp);
            System.debug(res.toString());
            System.debug('STATUS:'+res.getStatus());
            System.debug('STATUS_CODE:'+res.getStatusCode());
           /* Map<String, Object> m =(Map<String, Object>)JSON.deserializeUntyped(resp);
            System.debug(m);
            //CONTROL DE ERRORES
            String data=(String)m.get('data');  
            String status=(String)m.get('status');  
            if(status.equals('200')){
                System.debug('CORRECTO');
            }*/




        } catch(System.CalloutException e) {
            facturaDeudor.errorMessage(e);
        }
    }

问题是关于防火墙的,将服务器白名单中URL的所有de地址都放到callout中,就可以了。 help.salesforce.com/articleView?id=000003652&type=1