Estructura de la Función Browser Logic
Cuando crea una función de Browser Logic desde el CLI de Catalyst, se crea con una estructura de código base como se muestra a continuación. Catalyst también crea las dependencias y archivos de configuración requeridos para su función y su proyecto. Puede consultar la página de ayuda Estructura del Directorio del Proyecto para obtener detalles sobre los archivos de configuración generales.
Java
Nota: Este código base a continuación estará presente en su archivo de función cuando inicialice una función de Browser Logic en Java con Selenium
copy
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.simple.JSONObject;
import org.openqa.selenium.chrome.ChromeDriver;
import com.catalyst.browserlogic.SeleniumHandler;
public class BrowserlessExample implements SeleniumHandler {
private static final Logger LOGGER = Logger.getLogger(SeleniumExample.class.getName());
JSONObject responseData = new JSONObject();
@Override
@SuppressWarnings("unchecked")
public void runner(HttpServletRequest request, HttpServletResponse response,ChromeDriver driver) throws Exception {
try {
//Obtiene el endpoint y el método al que se realizó la llamada
String url = request.getRequestURI();
String method = request.getMethod();
driver.get("https://www.example.com");
responseData.put("message", "Title of the page "+driver.getTitle());
//Envía la respuesta de vuelta al cliente
response.setContentType("application/json");
response.getWriter().write(responseData.toString());
response.setStatus(200);
} catch (Exception e) {
//Las acciones se registran. Puedes revisar los logs desde Catalyst Logs.
LOGGER.log(Level.SEVERE, "Exception in SeleniumExample", e);
responseData.put("error", "Internal server error occurred. Please try again in some time.");
response.getWriter().write(responseData.toString());
response.setStatus(500);
}
}
}
NodeJS
Nota: Este código base a continuación estará presente en su archivo de función cuando inicialice una función de Browser Logic en NodeJS con Puppeteer
copy
module.exports.puppeteer = async (request, response, page) => {
await page.goto('https://example.com/',{waitUntil: "domcontentloaded"});
const pageTitle = await page.title();
response.setHeader('Content-Type', 'application/json');
response.write(JSON.stringify({ output: pageTitle }));
response.end();
};
Última actualización 2026-03-24 17:38:39 +0530 IST
Yes
No
Send your feedback to us
Skip
Submit