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


PHP phpCAS::getProxiedService方法代码示例

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


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

示例1: retrieveData

 /**
  * Retrieves the data using the given url. The default implementation uses the file_get_content()
  * function to retrieve the request. Subclasses would need to implement this if a simple GET request
  * is not sufficient (i.e. you need POST or custom headers). 
  * @param string the url to retrieve
  * @return string the response from the server
  * @TODO support POST requests and custom headers and perhaps proxy requests
  */
 protected function retrieveData($url)
 {
     if ($this->debugMode) {
         error_log(sprintf(__CLASS__ . " Retrieving %s", $url));
     }
     try {
         if ($this->method == 'GET') {
             $http = phpCAS::getProxiedService(PHPCAS_PROXIED_SERVICE_HTTP_GET);
         } else {
             if ($this->method = 'POST') {
                 $http = phpCAS::getProxiedService(PHPCAS_PROXIED_SERVICE_HTTP_POST);
             } else {
                 throw new Exception('Unsupported HTTP method ' . $this->method);
             }
         }
         $http->setUrl($url);
         // Not yet supported in phpCAS-1.2.2, will be added in a future version.
         //      foreach ($this->getHeaders() as $header) {
         //          $http->addRequestHeader($header);
         //      }
         $http->send();
         $this->response = DataResponse::factory('HTTPDataResponse', array());
         $this->response->setRequest($this->method, $url, $this->filters, $this->requestHeaders);
         $this->response->setResponse($http->getResponseBody(), $http->getResponseHeaders());
         if ($this->debugMode) {
             error_log(sprintf(__CLASS__ . " Returned status %d and %d bytes", $this->getResponseCode(), strlen($data)));
         }
         return $http->getResponseBody();
     } catch (CAS_ProxyTicketException $e) {
         if ($this->debugMode) {
             error_log(__CLASS__ . " The user's proxy ticket expired, prompt for login.");
         }
         // For now we will just re-throw the exception and let the WebModule that
         // is calling us handle prompting for re-authentication.
         throw $e;
     }
 }
开发者ID:nncsang,项目名称:Kurogo,代码行数:45,代码来源:CASProxyAuthenticatedDataController.php

示例2: flush

    <?php 
require 'script_info.php';
?>
    <p>the user's login is <b><?php 
echo phpCAS::getUser();
?>
</b>.</p>
    <h2>Response from service <?php 
echo $serviceUrl;
?>
</h2>
<?php 
flush();
// call a service and change the color depending on the result
try {
    $service = phpCAS::getProxiedService(PHPCAS_PROXIED_SERVICE_HTTP_POST);
    $service->setUrl($serviceUrl);
    $service->setContentType('application/x-www-form-urlencoded');
    $service->setBody('favorite_color=blue');
    $service->send();
    if ($service->getResponseStatusCode() == 200) {
        echo '<div class="success">';
        echo $service->getResponseBody();
        echo '</div>';
    } else {
        // The service responded with an error code 404, 500, etc.
        echo '<div class="error">';
        echo 'The service responded with a ' . $service->getResponseStatusCode() . ' error.';
        echo $service->getResponseBody();
        echo '</div>';
    }
开发者ID:TexGG,项目名称:Libertempo,代码行数:31,代码来源:example_proxy_POST.php


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