当前位置: 首页>>代码示例>>PHP>>正文


PHP IResponse::setExpiration方法代码示例

本文整理汇总了PHP中Nette\Http\IResponse::setExpiration方法的典型用法代码示例。如果您正苦于以下问题:PHP IResponse::setExpiration方法的具体用法?PHP IResponse::setExpiration怎么用?PHP IResponse::setExpiration使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Nette\Http\IResponse的用法示例。


在下文中一共展示了IResponse::setExpiration方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: send

 /**
  * {inheritDoc}
  */
 public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse)
 {
     $httpResponse->setContentType($this->getContentType(), 'utf-8');
     $httpResponse->setExpiration(FALSE);
     $httpResponse->setCode($this->code);
     echo Nette\Utils\Json::encode($this->getPayload(), Nette\Utils\Json::PRETTY);
 }
开发者ID:ublaboo,项目名称:responses,代码行数:10,代码来源:JsonPrettyResponse.php

示例2: send

 /**
  * @param Http\IRequest $request
  * @param Http\IResponse $response
  */
 public function send(Http\IRequest $request, Http\IResponse $response)
 {
     $response->setContentType($this->contentType);
     $response->setCode($this->code ?: Http\IResponse::S200_OK);
     $response->setExpiration($this->expiration);
     $response->setHeader('Pragma', $this->expiration ? 'cache' : 'no-cache');
     echo Json::encode($this->data);
 }
开发者ID:dzibma,项目名称:rest-api,代码行数:12,代码来源:JsonResponse.php

示例3: send

 /**
  * {@inheritdoc}
  */
 public function send(IRequest $httpRequest, IResponse $httpResponse)
 {
     $httpResponse->setContentType('text/xml');
     $httpResponse->setExpiration(false);
     $httpResponse->setCode($this->getCode());
     $httpResponse->setHeader('Content-Length', strlen($this->response));
     echo $this->response;
 }
开发者ID:tomaj,项目名称:nette-api,代码行数:11,代码来源:XmlApiResponse.php

示例4: lastModified

 /**
  * Attempts to cache the sent entity by its last modification date.
  * @param  string|int|DateTime  last modified time
  * @param  string strong entity tag validator
  * @param  mixed  optional expiration time
  * @return void
  * @throws Nette\Application\AbortException
  */
 public function lastModified($lastModified, $etag = NULL, $expire = NULL)
 {
     if ($expire !== NULL) {
         $this->httpResponse->setExpiration($expire);
     }
     if (!$this->httpContext->isModified($lastModified, $etag)) {
         $this->terminate();
     }
 }
开发者ID:pdostal,项目名称:nette-blog,代码行数:17,代码来源:Presenter.php

示例5: lastModified

 /**
  * Attempts to cache the sent entity by its last modification date.
  * @param  string|int|\DateTimeInterface  last modified time
  * @param  string strong entity tag validator
  * @param  mixed  optional expiration time
  * @return void
  * @throws Nette\Application\AbortException
  */
 public function lastModified($lastModified, $etag = NULL, $expire = NULL)
 {
     if ($expire !== NULL) {
         $this->httpResponse->setExpiration($expire);
     }
     $helper = new Http\Context($this->httpRequest, $this->httpResponse);
     if (!$helper->isModified($lastModified, $etag)) {
         $this->terminate();
     }
 }
开发者ID:voda,项目名称:application,代码行数:18,代码来源:Presenter.php

示例6: send

 /**
  * @param Nette\Http\IRequest $httpRequest
  * @param Nette\Http\IResponse $httpResponse
  * @throws \Nette\Application\BadRequestException
  */
 public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse)
 {
     $httpResponse->setContentType($this->contentType);
     $httpResponse->setExpiration(FALSE);
     $callback = $httpRequest->getQuery(self::$callbackName);
     if (is_null($callback)) {
         throw new \Nette\Application\BadRequestException("Invalid JSONP request.");
     }
     echo $callback . "(" . Nette\Utils\Json::encode($this->payload) . ")";
 }
开发者ID:frosty22,项目名称:ale,代码行数:15,代码来源:JsonpResponse.php

示例7: send

 /**
  * Sends response to output.
  * @return void
  */
 public function send(IRequest $httpRequest, \Nette\Http\IResponse $httpResponse)
 {
     if ($this->error) {
         $this->payload = ['error' => TRUE, 'message' => $this->errorMessage];
     } else {
         $this->payload['error'] = FALSE;
     }
     $httpResponse->setContentType($this->contentType);
     $httpResponse->setExpiration(FALSE);
     echo Json::encode($this->payload);
 }
开发者ID:pogodi,项目名称:OCApi,代码行数:15,代码来源:JsonResponse.php

示例8: send

 /**
  * Sends response to output.
  *
  * @param \Nette\Http\IRequest $httpRequest
  * @param \Nette\Http\IResponse $httpResponse
  */
 public function send(\Nette\Http\IRequest $httpRequest, \Nette\Http\IResponse $httpResponse)
 {
     if (strlen($this->etag)) {
         $httpResponse->setHeader('Etag', $this->etag);
     }
     $httpResponse->setExpiration(\Nette\Http\IResponse::PERMANENT);
     if (($inm = $httpRequest->getHeader('if-none-match')) && $inm == $this->etag) {
         $httpResponse->setCode(\Nette\Http\IResponse::S304_NOT_MODIFIED);
         return;
     }
     $httpResponse->setContentType($this->contentType);
     echo $this->content;
 }
开发者ID:lohini,项目名称:webloader,代码行数:19,代码来源:WebLoaderResponse.php

示例9: send

 /**
  * Sends response to output.
  *
  * @param Http\IRequest $httpRequest
  * @param Http\IResponse $httpResponse
  */
 public function send(Http\IRequest $httpRequest, Http\IResponse $httpResponse)
 {
     $httpResponse->setExpiration(Http\IResponse::PERMANENT);
     if (($inm = $httpRequest->getHeader('if-none-match')) && $inm == $this->etag) {
         $httpResponse->setCode(Http\IResponse::S304_NOT_MODIFIED);
         return;
     }
     $httpResponse->setContentType(AssetsLoader\Files\MimeMapper::getMimeFromFilename($this->filePath));
     $httpResponse->setHeader('Content-Transfer-Encoding', 'binary');
     $httpResponse->setHeader('Content-Length', filesize($this->filePath));
     $httpResponse->setHeader('Content-Disposition', 'attachment; filename="' . basename($this->filePath) . '"');
     $httpResponse->setHeader('Access-Control-Allow-Origin', '*');
     // Read the file
     readfile($this->filePath);
 }
开发者ID:ales-zrak,项目名称:assets-loader,代码行数:21,代码来源:FileResponse.php

示例10: send

 /**
  * Sends response to output.
  * @param Nette\Http\IRequest $httpRequest
  * @param Nette\Http\IResponse $httpResponse
  * @return void
  */
 public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse)
 {
     $httpResponse->setContentType($this->contentType);
     $httpResponse->setExpiration(FALSE);
     $response = array();
     $actual_url = $httpRequest->getUrl()->getAbsoluteUrl();
     date_default_timezone_set('UTC');
     //TODO: -1min
     $date = date('YmdHi');
     $hmac = hash_hmac('sha512', $actual_url . $date, 'PRIVATE_KEY');
     //TODO: na základě public key ($api_key)
     if ($this->payload['api_hash'] !== $hmac) {
         $response['err_code'] = 10;
         $response['err_info'] = $this->errors[10];
     }
     echo Nette\Utils\Json::encode($this->payload);
 }
开发者ID:krausv,项目名称:www.zeminem.cz,代码行数:23,代码来源:ApiResponse.php

示例11: send

 /**
  * Sends response to output.
  * @return void
  */
 public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse)
 {
     $httpResponse->setContentType($this->contentType);
     $httpResponse->setExpiration(FALSE);
     echo Nette\Utils\Json::encode($this->payload);
 }
开发者ID:petrparolek,项目名称:web_cms,代码行数:10,代码来源:JsonResponse.php

示例12: send

 /**
  * Sends response to output.
  * @param Nette\Http\IRequest  $httpRequest
  * @param Nette\Http\IResponse $httpResponse
  */
 public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse)
 {
     $httpResponse->setContentType('application/hal+json');
     $httpResponse->setExpiration(false);
     echo $this->json;
 }
开发者ID:klimesf,项目名称:nette-hateoas,代码行数:11,代码来源:HalJsonResponse.php

示例13: send

 /**
  * @param Http\IRequest $httpRequest
  * @param Http\IResponse $httpResponse
  */
 public function send(Http\IRequest $httpRequest, Http\IResponse $httpResponse)
 {
     $httpResponse->setContentType($this->contentType);
     $httpResponse->setCode($this->code);
     $httpResponse->setExpiration($this->expiration);
     $httpResponse->setHeader('Pragma', $this->expiration ? 'cache' : 'no-cache');
     $response = Json::encode($this->data);
     if (is_callable($this->postProcessor)) {
         $response = call_user_func($this->postProcessor, $response);
     }
     echo $response;
 }
开发者ID:tripomatic,项目名称:nette-api,代码行数:16,代码来源:JsonResponse.php

示例14: send

 /**
  * Send headers and outputs PDF document to browser.
  * @throws InvalidStateException
  */
 public function send(Http\IRequest $httpRequest, Http\IResponse $httpResponse)
 {
     $this->convert();
     $output = fgets($this->pipes[1], 5);
     if ($output === '%PDF') {
         $httpResponse->setContentType('application/pdf');
         if (strpos($httpRequest->getHeader('User-Agent'), 'MSIE') != FALSE) {
             $httpResponse->setHeader('Pragma', 'private');
             $httpResponse->setHeader('Cache-control', 'private');
             $httpResponse->setHeader('Accept-Ranges', 'bytes');
             $httpResponse->setExpiration('- 5 years');
         }
         echo $output;
         fpassthru($this->pipes[1]);
     }
     $this->close();
 }
开发者ID:kosikcz,项目名称:wkhtmltopdf,代码行数:21,代码来源:Document.php

示例15: send

 /**
  * Sends response to output.
  * @return void
  */
 public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse)
 {
     $lastMTime = \filemtime($this->getFile());
     // Pokud je povoleno cachovani, podrzim to po dobu 14ti dnu (nebo dokud se soubor zmeni)
     if ($this->isCachingAllowed()) {
         $httpResponse->setExpiration(time() + 60 * 60 * 24 * 14);
         $cachedTime = $httpRequest->getHeader('If-Modified-Since');
         if ($cachedTime >= $lastMTime) {
             $httpResponse->setCode(304);
             return;
         }
     }
     if (!$this->dontSetContentType) {
         $httpResponse->setContentType($this->getContentType());
     }
     $httpResponse->addHeader("Last-Modified", gmdate("U", $lastMTime));
     $httpResponse->setHeader('Content-Disposition', $this->getContentDisposition() . '; filename="' . $this->getName() . '"');
     $filesize = $length = filesize($this->getFile());
     //$handle = fopen($this->getFile(), 'r');
     if (false && $this->resuming) {
         $httpResponse->setHeader('Accept-Ranges', 'bytes');
         $range = $httpRequest->getHeader('Range');
         if ($range !== NULL) {
             $range = substr($range, 6);
             // 6 == strlen('bytes=')
             list($start, $end) = explode('-', $range);
             if ($start == NULL) {
                 $start = 0;
             }
             if ($end == NULL) {
                 $end = $filesize - 1;
             }
             if ($start < 0 || $end <= $start || $end > $filesize - 1) {
                 $httpResponse->setCode(416);
                 // requested range not satisfiable
                 return;
             }
             $httpResponse->setCode(206);
             $httpResponse->setHeader('Content-Range', 'bytes ' . $start . '-' . $end . '/' . $filesize);
             $length = $end - $start + 1;
             fseek($handle, $start);
         } else {
             $httpResponse->setHeader('Content-Range', 'bytes 0-' . ($filesize - 1) . '/' . $filesize);
         }
     }
     $httpResponse->setHeader('Content-Length', $length);
     readfile($this->getFile());
     //while(!feof($handle)) {
     //	echo fread($handle, 4e6);
     //}
     //fclose($handle);
 }
开发者ID:vbuilder,项目名称:framework,代码行数:56,代码来源:FileResponse.php


注:本文中的Nette\Http\IResponse::setExpiration方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。