unvurn/http-user-agent

v0.1.0 2024-07-26 13:14 UTC

This package is auto-updated.

Last update: 2025-04-26 14:44:47 UTC


README

the simple parser for HTTP Request Header: "User-Agent"

Install

$ composer require unvurn/http-user-agent

Usage

    // Controller
    
    // api function that processes request from UnityPlayer
    public function get(Request $request) {
        $userAgent = $request->getUserAgent();
        if (!$userAgent->hasProduct("UnityPlayer")) {
            throw new BadRequestException("access allowed for UnityPlayer only");
        }

        // regular process
        
        return response()->json([
            // ...        
        ]);
    }
    // if you want to check "AppleWebKit" version:
    // ex) Windows 10/11
    //     Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
    public function get(Request $request) {
        $userAgent = $request->getUserAgent();
        if ($userAgent->product("AppleWebKit")?->version !== "537.36") {
            throw new BadRequestException("latest AppleWebKit version required");
        }

        // regular process
        
        return response()->json([
            // ...        
        ]);
    }