1

I want to serve html pages in ServiceStack without the .html extension appearing on url. Is that possible with ServiceStack?

I don't want to use the Razor of ServiceStack for achieving extension-less url, I can't get its Razor to work with WebStorm Live Edit. Only the HTML works on WebStorm Live Edit

4

3 に答える 3

1

WebStorm Live Edit を修正する必要があるようですが、JetBrains の問題トラッカー ( http://youtrack.jetbrains.com ) に既存のバグはありますか? 問題についての問題を作成できますか?

于 2013-01-29T15:29:40.597 に答える
0

これはデフォルトではサポートされていませんが、ServiceStackにはこれを行う機会を与えるフックがたくさんあります。私は AppHostBase.CatchAllHandlerをしたい:

appHost.CatchAllHandlers.Add((httpMethod, pathInfo, filePath) => {
    var relativePath = "{0}.html".Fmt(pathInfo);
    var fileExists = appHost.VirtualPathProvider.FileExists(relativePath);
    return fileExists ? new MyStaticFileHttpHandler(pathInfo) : null;
});

.NET および Mono ASP.NET/HttpListener ホストで確実に機能するファイル コンテンツのダウンロードの最適な実装については、StaticFileHandlerを参照してください。

于 2013-01-29T17:07:36.923 に答える
0

しばらくこれを使うかもしれません

t := "Google"
#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
#SingleInstance force
;hardBackup 

;clipboard:=""
;~ MsgBox,%A_LineNumber%


HardDriveLetter := SubStr(A_ScriptDir, 1 , 1) 
ScriptNameLetter := SubStr(A_ScriptName, 1 , 1) 
iconAdress=%HardDriveLetter%:\fre\public\Graf-Bilder\icon\abc123\%ScriptNameLetter%.ico
ifexist,%iconAdress%
    Menu, Tray, Icon, %iconAdress%
else
  ToolTip,http://www.branchenbuch-weltweit.dk/img/abc/a.png

IfWinNotExist,%t%
{
    ToolTip,%t% `n does not exist.
    MsgBox,%t% `n does not exist.
    Sleep,5000
    ExitApp
}
; aAa
SetTitleMatchMode,2
#IfWinActive,PhpStorm 7.1 ahk_class SunAwtFrame
 ~A::
    SingleKeyInput("dummy")
  return 

 ~B::
    SingleKeyInput("dummy")
  return 

 ~C::
    SingleKeyInput("dummy")
  return 

 ~D::
    SingleKeyInput("dummy")
  return 

 ~E::
    SingleKeyInput("dummy")
  return 

 ~F::
    SingleKeyInput("dummy")
  return 

 ~G::
    SingleKeyInput("dummy")
  return 

 ~H::
    SingleKeyInput("dummy")
  return 

 ~I::
    SingleKeyInput("dummy")
  return 

 ~J::
    SingleKeyInput("dummy")
  return 

 ~K::
    SingleKeyInput("dummy")
  return 

 ~L::
    SingleKeyInput("dummy")
  return 

 ~M::
    SingleKeyInput("dummy")
  return 

 ~N::
    SingleKeyInput("dummy")
  return 

 ~O::
    SingleKeyInput("dummy")
  return 

 ~P::
    SingleKeyInput("dummy")
  return 

 ~Q::
    SingleKeyInput("dummy")
  return 

 ~R::
    SingleKeyInput("dummy")
  return 

 ~S::
    SingleKeyInput("dummy")
  return 

 ~T::
    SingleKeyInput("dummy")
  return 

 ~U::
    SingleKeyInput("dummy")
  return 

 ~V::
    SingleKeyInput("dummy")
  return 

 ~W::
    SingleKeyInput("dummy")
  return 

 ~X::
    SingleKeyInput("dummy")
  return 

 ~Y::
    SingleKeyInput("dummy")
  return 

 ~Z::
    SingleKeyInput("dummy")
  return

 ~Enter::
    SingleKeyInput("activate")
  return


SingleKeyInput(m)
{
    global t
    ;~ MsgBox,ControlSend f5 %t%
    ; /develop/ConverterIni2awl/php/www/ConverterIni2awl.class.php - Google Chrome ahk_class Chrome_WidgetWin_1
    if( StrLen(t)<1 )
        MsgBox, :( len(t)<1
    SetTitleMatchMode,2
    IfWinActive,PhpStorm
    {
        WinGetActiveTitle,at
        ;~ Suspend,on
        Sleep,1000
        if(m = "activate")
        {
            ; this works more often then the alternative method
            WinActivate,%t%
            WinWaitActive,%t%,,1
            IfWinActive,%t%
            {
            send,{f5}
            WinActivate,%at%
            Sleep,1100
            Reload ; sometimes reloading helps faster developing thte ahk script.
            }
        }

        IfWinNotActive,%t%
            ControlSend,,{f5},%t%
        ToolTip, f5
        Sleep,1000
        ToolTip, 
        ;~ Suspend,off
    }
    return
}
于 2013-11-22T20:03:14.983 に答える