网站首页 > 教程文章 正文
应用请求(yii::$app->request)是用 yii\web\Request 对象来表示的。
通过 request 组件来获取请求参数(代替 $_GET 和 $_POST):
$request = Yii::$app->request;
$get = $request->get();
// 等价于: $get = $_GET;
$id = $request->get('id');
// 等价于: $id = isset($_GET['id']) ? $_GET['id'] : null;
$id = $request->get('id', 1);
// 等价于: $id = isset($_GET['id']) ? $_GET['id'] : 1;
$post = $request->post();
// 等价于: $post = $_POST;
$name = $request->post('name');
// 等价于: $name = isset($_POST['name']) ? $_POST['name'] : null;
$name = $request->post('name', '');
// 等价于: $name = isset($_POST['name']) ? $_POST['name'] : '';
获取通过 PUT, PATCH 或者其他的 request methods 请求方法提交上来的参数:
// 返回所有参数:
$params = $request->bodyParams;
$params = $request->getBodyParams();
// 返回参数'id':
$params = $request->getBodyParam('id');
请求方法:
$method = $request->method; // 返回当前使用的请求方法, eg:'POST','GET'
$method = $request->getMethod();
$request->isGet; // 判断是否是一个 GET 请求
$request->getIsGet();
$request->isPost; // 判断是否是一个 POST 请求
$request->getIsPost();
$request->isAjax; // 判断是否是一个 AJAX 请求
$request->getIsAjax();
$request->isPut; // 判断是否是一个 PUT 请求
$request->getIsPut();
$request->isHead; // 判断是否是一个 HEAD 请求
$request->getIsHead();
$request->isPatch; // 判断是否是一个 PATCH 请求
$request->getIsPatch();
$request->isDelete; // 判断是否是一个删除请求
$request->getIsDelete();
$request->isFlash; // 判断是否是一个 Adobe Flash 或 Flex 请求
$request->getIsFlash();
$request->isOptions; // 判断是否是一个 OPTIONS 请求
$request->getIsOptions();
$request->isPjax; // 判断是否是一个 PJAX 请求
$request->getIsPjax();
$request->isSecureConnection; // 判断是否是通过安全通道(HTTPS)发送的请求
$request->getIsSecureConnection();
请求 URLs:
// request 组件提供了许多方式来检测当前请求的 URL.
// 假设被请求的URL是 http://example.com/index.php/article/view?id=100
$request->url; // 返回当前请求的相对Url, eg:'/article/view?id=100'
$request->getUrl();
$request->absoluteUrl; // 返回当前请求的绝对Url, eg:'http://yii2advanced.com/article/view?id=100'
$request->getAbsoluteUrl();
$request->pathInfo; // 返回当前请求的路径信息, eg:'article/view'
$request->getPathInfo();
$request->queryString; // 返回当前请求问号后的部分, eg:'id=100'
$request->getQueryString();
$request->scriptUrl; // 返回当前请求的入口文件, eg:'/index.php'
$request->getScriptUrl();
$request->hostInfo; // 返回当前请求的主机部分, eg:'http://yii2advanced.com'
$request->getHostInfo();
$request->serverName; // 返回当前请求的域名, eg:'yii2advanced.com'
$request->getServerName();
$request->serverPort; // 返回当前请求的服务器端口号, eg:80
$request->getServerPort();
$request->baseUrl; // eg:''
$request->getBaseUrl();
HTTP头:
// $headers 是一个 yii\web\HeaderCollection 对象, 详细的属性和方法查看该对象
// $accept 返回 Accept Header 值, eg:'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
$headers = Yii::$app->request->headers;
$headers = Yii::$app->request->getHeaders();
$accept = $headers->get('Accept');
// 返回 User-Agent 头, eg:'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0'
Yii::$app->request->userAgent;
Yii::$app->request->getUserAgent();
// 返回 Content-Type 头的值, Content-Type 是请求体中MIME类型数据
Yii::$app->request->contentType;
Yii::$app->request->getContentType();
// 返回用户可接受的内容MIME类型. 返回的类型是按照他们的质量得分来排序的, 得分最高的类型将被最先返回.
Yii::$app->request->acceptableContentTypes;
Yii::$app->request->getAcceptableContentTypes();
// 返回用户可接受的语言. 返回的语言是按照他们的偏好层次来排序的, 第一个参数代表最优先的语言.
Yii::$app->request->acceptableLanguages;
Yii::$app->request->getAcceptableLanguages();
客户端信息:
Yii::$app->request->userIP; // 返回用户的 ip 地址, eg:'127.0.0.1'
Yii::$app->request->getUserIP();
Yii::$app->request->userHost; // 返回用户的主机名
Yii::$app->request->getUserHost();
其他属性和方法:
Yii::$app->request->authUser;
Yii::$app->request->getAuthUser();
Yii::$app->request->authPassword;
Yii::$app->request->getAuthPassword();
Yii::$app->request->behaviors;
Yii::$app->request->behaviors();
Yii::$app->request->getBehaviors();
Yii::$app->request->csrfParam;
Yii::$app->request->csrfCookie;
Yii::$app->request->cookieValidationKey;
Yii::$app->request->csrfTokenFromHeader;
Yii::$app->request->getCsrfTokenFromHeader();
Yii::$app->request->csrfToken;
Yii::$app->request->getCsrfToken();
Yii::$app->request->cookies;
Yii::$app->request->getCookies();
Yii::$app->request->detachBehaviors();
Yii::$app->request->eTags;
Yii::$app->request->getETags();
Yii::$app->request->enableCsrfCookie;
Yii::$app->request->enableCsrfValidation;
Yii::$app->request->enableCookieValidation;
Yii::$app->request->ensureBehaviors();
Yii::$app->request->getPreferredLanguage();
Yii::$app->request->hostName;
Yii::$app->request->getHostName();
Yii::$app->request->init();
Yii::$app->request->isConsoleRequest;
Yii::$app->request->getIsConsoleRequest();
Yii::$app->request->methodParam;
Yii::$app->request->parsers;
Yii::$app->request->port;
Yii::$app->request->getPort();
Yii::$app->request->params;
Yii::$app->request->getParams();
Yii::$app->request->queryParams;
Yii::$app->request->getQueryParams();
Yii::$app->request->resolve();
Yii::$app->request->referrer;
Yii::$app->request->getReferrer();
Yii::$app->request->rawBody;
Yii::$app->request->getRawBody();
Yii::$app->request->scriptFile;
Yii::$app->request->getScriptFile();
Yii::$app->request->securePort;
Yii::$app->request->getSecurePort();
Yii::$app->request->validateCsrfToken();
Yii::$app->request->attachBehavior();
Yii::$app->request->attachBehaviors();
Yii::$app->request->canSetProperty();
Yii::$app->request->canGetProperty();
Yii::$app->request->detachBehavior();
Yii::$app->request->getBehavior();
Yii::$app->request->getQueryParam();
Yii::$app->request-getservbyname();
Yii::$app->request-getservbyport();
Yii::$app->request-gettype();
Yii::$app->request-gettext();
Yii::$app->request-gettimeofday();
Yii::$app->request->hasMethod();
Yii::$app->request->hasProperty();
Yii::$app->request->hasEventHandlers();
Yii::$app->request->on();
Yii::$app->request->off();
Yii::$app->request->parseAcceptHeader();
Yii::$app->request->setUrl();
Yii::$app->request->setAcceptableContentTypes();
Yii::$app->request->setAcceptableLanguages();
Yii::$app->request->setBaseUrl();
Yii::$app->request->setBodyParams();
Yii::$app->request->setHostInfo();
Yii::$app->request->setIsConsoleRequest();
Yii::$app->request->setParams();
Yii::$app->request->setPathInfo();
Yii::$app->request->setPort();
Yii::$app->request->setQueryParams();
Yii::$app->request->setRawBody();
Yii::$app->request->setScriptFile();
Yii::$app->request->setScriptUrl();
Yii::$app->request->setSecurePort();
Yii::$app->request->trigger();
- 上一篇: 查缺补漏:一文看懂HTTP请求流程,不信你还不会
- 下一篇: ASP.NET CORE学习总结
猜你喜欢
- 2024-12-03 查缺补漏:一文看懂HTTP请求流程,不信你还不会
- 2024-12-03 Mysql写入频繁,怎么破?这是我见过的最清晰的“神操作”
- 2024-12-03 “我将 AWS 的数据传输成本,降低了 99%!”
- 2024-12-03 必备 Python 库:Requests - 轻松完成 HTTP 请求
- 2024-12-03 免费获取韵达快递查询API的使用指南
- 2024-12-03 手撸了一个网络请求工具类,开发速度迅速提升了300%
- 2024-12-03 应用层协议HTTP和HTTPS,一篇文章学会
- 2024-12-03 HTTP客户端连接,选择HttpClient还是OkHttp?
- 2024-12-03 深入理解 HTTP 请求参数和响应参数
- 2024-12-03 解读常见的http响应状态码
- 最近发表
- 标签列表
-
- location.href (44)
- document.ready (36)
- git checkout -b (34)
- 跃点数 (35)
- 阿里云镜像地址 (33)
- qt qmessagebox (36)
- md5 sha1 (32)
- mybatis plus page (35)
- semaphore 使用详解 (32)
- update from 语句 (32)
- vue @scroll (38)
- 堆栈区别 (33)
- 在线子域名爆破 (32)
- 什么是容器 (33)
- sha1 md5 (33)
- navicat导出数据 (34)
- 阿里云acp考试 (33)
- 阿里云 nacos (34)
- redhat官网下载镜像 (36)
- srs服务器 (33)
- pico开发者 (33)
- https的端口号 (34)
- vscode更改主题 (35)
- 阿里云资源池 (34)
- os.path.join (33)