サンプル 5: 匿名ログイン

通常は、ユーザが Web ブラウザでフレキシブル Web レイアウトを開くときは、ユーザ名とパスワードの入力を求めるプロンプトが表示されます(Infrastructure StudioInfrastructure Studioボタンを使用している場合は表示されません)。

匿名ログインを有効にするために、サンプルにはサンプルには次のファイルが含まれています。WebServerExtensionsInstallDir¥www¥fusion¥FlexViewer.php:

<?php
  $fusionMGpath = './layers/MapGuide/php/';
  include $fusionMGpath . 'Common.php';
  $locale = GetDefaultLocale();
  $appdef = "";
  $template = "";
  $session = $siteConnection->GetSite()->CreateSession();
  GetRequestParameters();
  $viewerSrc = 'templates/mapguide/' . $template 
    . '/index.html';
  $viewerSrc = $viewerSrc . '?APPLICATIONDEFINITION=' 
    . $appdef;
  $viewerSrc = $viewerSrc . '&SESSION=' . $session;
  header( 'Location: ' . $viewerSrc ) ;
  function GetParameters($params)
  {
    global $appdef, $template;
    $appdef = $params['APPLICATIONDEFINITION'];
    $template = $params['TEMPLATE'];
  }
  function GetRequestParameters()
  {
    if($_SERVER['REQUEST_METHOD'] == "POST")
      GetParameters($_POST);
    else
      GetParameters($_GET);
  }
    	
?>

これにより、次の URL を介して匿名で(ユーザ名やパスワードを入力せずに)ログインすることができます。

http://
server
:
port
/mapserver2012/fusion/FlexViewer.php ?APPLICATIONDEFINITION=Library%3a%2f%2fSamples%2f FlexibleWebLayouts%2fExamples.ApplicationDefinition &TEMPLATE=examples
注:

匿名ユーザにはリポジトリを修正する権限がないため、このような方法でログインした場合は、サンプル 4 の区画所有者を更新できません。