お知らせ:

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

Browser Logicファンクション構造

Catalyst CLIからBrowser Logicファンクションを作成すると、以下に示すボイラープレートコード構造で作成されます。Catalystはまた、ファンクションとプロジェクトに必要な依存関係と設定ファイルも作成します。一般的な設定ファイルの詳細については、プロジェクトディレクトリ構造のヘルプページを参照してください。

Java

注意: 以下のボイラープレートコードは、JavaでSeleniumを使用してBrowser Logicファンクションを初期化したときにファンクションファイルに含まれます
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 {
			//呼び出しが行われたエンドポイントとメソッドを取得する
			String url = request.getRequestURI();
			String method = request.getMethod();
			driver.get("https://www.example.com");
			responseData.put("message", "Title of the page "+driver.getTitle());
			//クライアントにレスポンスを返す
			response.setContentType("application/json");
			response.getWriter().write(responseData.toString());
			response.setStatus(200);
		} catch (Exception e) {
		//アクションがログに記録されます。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

注意: 以下のボイラープレートコードは、NodeJSでPuppeteerを使用してBrowser Logicファンクションを初期化したときにファンクションファイルに含まれます
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();
};

最終更新日 2026-03-24 17:38:39 +0530 IST

このページについて