{"id":18352072,"url":"https://github.com/abgeo/webii-hw01-request-response","last_synced_at":"2025-04-10T00:37:43.286Z","repository":{"id":125370668,"uuid":"172690494","full_name":"ABGEO/WEBII-HW01-Request-Response","owner":"ABGEO","description":null,"archived":false,"fork":false,"pushed_at":"2019-03-04T08:03:37.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-10T00:37:43.228Z","etag":null,"topics":["hw","request","response","web2"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ABGEO.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-26T10:33:10.000Z","updated_at":"2020-09-07T10:33:39.000Z","dependencies_parsed_at":null,"dependency_job_id":"a949b6c1-d83a-4ace-b53b-8e587103689c","html_url":"https://github.com/ABGEO/WEBII-HW01-Request-Response","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABGEO%2FWEBII-HW01-Request-Response","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABGEO%2FWEBII-HW01-Request-Response/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABGEO%2FWEBII-HW01-Request-Response/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABGEO%2FWEBII-HW01-Request-Response/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ABGEO","download_url":"https://codeload.github.com/ABGEO/WEBII-HW01-Request-Response/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248138007,"owners_count":21053775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hw","request","response","web2"],"created_at":"2024-11-05T21:34:36.942Z","updated_at":"2025-04-10T00:37:43.269Z","avatar_url":"https://github.com/ABGEO.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WEBII-HW01-Request-Response\n\n## Including\n\nInclude Autoloader\n```php\nrequire_once __DIR__ . '/Services/autoloader.php';\n```\n## Class Request\nImport class\n```php\nuse web2hw\\Request;\n```\nCrete class new object\n```php\n$request = new Request();\n```\n\n### Class Methods\n#### getHeaders()\nGet request HTTP Headers\n\nGet all headers\n```php\n$allHeaders = $request-\u003egetHeaders();\n```\nGet single header (Ex.: Host)\n```php\n$singleHeader = $request-\u003egetHeaders('Host');\n```\nGet more then one header\n```php\n$manyHeaders = $request-\u003egetHeaders(['Accept',  'Accept-Encoding']);\n```\n\n##### Allowed headers\n[MDN -  HTTP headers](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers \"MDN -  HTTP headers\")\n\n#### getMethod()\nGet request HTTP method\n\n#### hasHeader($key)\nCheck if request has header\n\n#### getPath()\nGet request path\n\n#### getScheme()\nGet request scheme(http or https)\n\n#### getQueryParams()\nGet request query parameters\n\n#### getQuery($key)\nGet request query parameter by key\n\n#### getData()\nGet request data by method\n\n## Class Response\nImport class\n```php\nuse web2hw\\Response;\n```\n\nPrepare data for transmission (Ex.: Array)\n```php\n$arr = [\n    'test' =\u003e 'vTest',\n    'test2' =\u003e [\n        'test2.1' =\u003e '2.1',\n        'test2.2' =\u003e [\n            'test2.2.1' =\u003e '2.2.1'\n        ]\n    ]\n];\n```\n\nCrete class new object\nClass takes 3 arguments:\n- Content (**Required**; Mixed) - The data for returning\n- Status Code (**Optional**; 200 by default; Integer) - The HTTP Status Code\n- HTTP Headers (**Optional**; empty by default; Key Value Array) - The HTTP Headers\n\n\n```php\n$response = new Response(json_encode($arr), 200, ['Content-Type' =\u003e 'application/json']);\n```\n\nAnd send it\n```php\necho $response-\u003esendResponse();\n```\n\n**2019 \u0026copy; Temuri Takalandze**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabgeo%2Fwebii-hw01-request-response","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabgeo%2Fwebii-hw01-request-response","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabgeo%2Fwebii-hw01-request-response/lists"}