Aviso:

Para brindarle información de soporte completa de manera más rápida, el contenido de esta página ha sido traducido al español mediante traducción automática. Para consultar la información de soporte más precisa, consulte la versión en inglés de este contenido.

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

EN ESTA PÁGINA