/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Hente header fra statisk fil
Fra : Rune Jensen


Dato : 24-04-10 02:21

Jeg ville gerne - i første omgang som et forsøg - hente en statisk fil
igennem en dynamisk fil, men sådan at den dynamiske fil "overtager"
header fra den statiske fil:

Lad os sige, jeg henter den dynamiske fil: fil.asp?filnavn=text.txt

Og at denne fil så skal have både header og indhold fra text.txt. Dette
er for at den så sender last-modified mv. (som jeg ikke selv ved særligt
meget om) og så jeg ikke behøver rode med det.

Er det muligt?


MVH
Rune Jensen

 
 
Stig Johansen (24-04-2010)
Kommentar
Fra : Stig Johansen


Dato : 24-04-10 03:24

Rune Jensen wrote:

> Er det muligt?
Ja.
Kig efter jslibrary.asp i den backup du har.
Den tager en stribe (js) filer som input, og tjekker op mod if-modified og
last-modified.

--
Med venlig hilsen
Stig Johansen

Stig Johansen (25-04-2010)
Kommentar
Fra : Stig Johansen


Dato : 25-04-10 10:26

"Stig Johansen" <wopr.dk@gmail.com> wrote in message
news:4bd2569e$0$277$14726298@news.sunsite.dk...
> Rune Jensen wrote:
>
> > Er det muligt?
> Ja.
> Kig efter jslibrary.asp i den backup du har.
> Den tager en stribe (js) filer som input, og tjekker op mod if-modified og
> last-modified.

Tilbagemeldinger er åbenbart ikke oppe i tiden, men hvis andre skulle have
samme problem, så kommer koden her:
.....
<%@ LANGUAGE = VBScript%><%Option Explicit%><%
Dim Lastmodified
Dim Ifmodified
Dim Filelist
Dim fcounter
Dim fso
Dim thisfile
Dim thisdate

Filelist = split(Request.QueryString("f"),",")
if uBound(Filelist) < 0 then
Response.Write "no arguments found"
Response.end
end if

LastModified=0
set fso = CreateObject("Scripting.FileSystemObject")
' Find last modified
for fcounter = 0 to uBound(Filelist)
thisdate =
fso.GetFile(Server.MapPath(filelist(fcounter)+".js")).DateLastModified
if thisdate > LastModified then LastModified = thisdate
next

Response.AddHeader "Last-Modified",XMLDatetime(LastModified)
Response.ContentType = "text/javascript"
if Request.QueryString("d")>"!" then
Response.AddHeader "Content-disposition","attachment;
filename="""+Request.QueryString("d")+".js"""
end if

Ifmodified = Request.ServerVariables("HTTP_IF_MODIFIED_SINCE")
if Ifmodified < "!" then
Ifmodified = 0
else
'Response.Write "if modified" + DatetimefromXML(ifmodified)
Ifmodified = cDate(DatetimefromXML(ifmodified))
end if


if LastModified <= Ifmodified then
Response.Status = "304 Not modified"
Response.end
end if
' modified, serve the content

for fcounter = 0 to uBound(Filelist)
Response.Write
fso.OpenTextFile(Server.Mappath(filelist(fcounter)+".js"),1).readall
next

' Response.Write vbCrLf+"Last modified= " + XMLDatetime(LastModified)+vbCrLf

'---------------------------------------------------------------------------
-----------
Function XMLDatetime (Datetime)
Dim Weekdaynames
Dim Monthnames
Weekdaynames = Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat")
Monthnames =
Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec
")
XMLDatetime = Weekdaynames(DatePart("w",Datetime)-1) + ", " + _
cStr(DatePart("d",Datetime)) + " " + _
Monthnames(DatePart("m",Datetime)-1) + " " + _
cStr(DatePart("yyyy",Datetime)) + " " + _
cStr(DatePart("h",Datetime)) + ":" + _
cStr(DatePart("n",Datetime)) + ":" + _
cStr(DatePart("s",Datetime)) + " GMT"
end Function ' XMLDatetime
'---------------------------------------------------------------------------
-----------
Function DatetimefromXMLold (DatetimeXML)
Dim Months
months = "JanFebMarAprMayJunJulAugSepOctNovDec"
Dim Y,M,D,H,N,S
'Mon, 04 Jan 2010 23:28:50 GMT

D = mid(DatetimeXML,6,2)
M = instr(months,mid(DatetimeXML,9,3)) \ 3 + 1
Y = mid(DatetimeXML,13,4)
H = mid(DatetimeXML,18,2)
N = mid(DatetimeXML,21,2)
S = mid(DatetimeXML,24,2)

DatetimefromXML= DatetimeXML+"/"+Y+"-"+cStr(M)+"-"+D+" "+H+":"+N+":"+S

end Function ' XMLDatetime
'---------------------------------------------------------------------------
-----------
Function DatetimefromXML (DatetimeXML)
Dim Months
months = "JanFebMarAprMayJunJulAugSepOctNovDec"
Dim Y,M,D,H,N,S
'Mon, 04 Jan 2010 23:28:50 GMT
Dim DateArray
Dim TimeArray
DateArray = split(DatetimeXML," ")
D = DateArray(1)
M = instr(months,DateArray(2)) \ 3 + 1
Y = DateArray(3)
TimeArray = split(DateArray(4),":")
H = TimeArray(0)
N = TimeArray(1)
S = TimeArray(2)

DatetimefromXML= Y+"-"+cStr(M)+"-"+D+" "+H+":"+N+":"+S

end Function ' XMLDatetime
'---------------------------------------------------------------------------
-----------

%>
.....

--
Med venlig hilsen/Best regards
Stig Johansen




Rune Jensen (25-04-2010)
Kommentar
Fra : Rune Jensen


Dato : 25-04-10 10:43

Den 25-04-2010 11:26, Stig Johansen skrev:
> "Stig Johansen"<wopr.dk@gmail.com> wrote in message
> news:4bd2569e$0$277$14726298@news.sunsite.dk...
>> Rune Jensen wrote:
>>
>>> Er det muligt?
>> Ja.
>> Kig efter jslibrary.asp i den backup du har.
>> Den tager en stribe (js) filer som input, og tjekker op mod if-modified og
>> last-modified.
>
> Tilbagemeldinger er åbenbart ikke oppe i tiden, men hvis andre skulle have
> samme problem, så kommer koden her:

Rolig nu, jeg er i gang ;)

Men takker for svar, selvfølgelig, og jeg har også lavet en (ret tidlig)
test af det inklusive minify, men den er ikke færdig, eftersom jeg er
ved at overveje forskellige parametre.

Jeg lægger en tilbagemelding i aften, jeg skal til føsdag nu.


MVH
Rune Jensen

Rune Jensen (25-04-2010)
Kommentar
Fra : Rune Jensen


Dato : 25-04-10 10:50

Den 25-04-2010 11:43, Rune Jensen skrev:
> Den 25-04-2010 11:26, Stig Johansen skrev:
>> "Stig Johansen"<wopr.dk@gmail.com> wrote in message
>> news:4bd2569e$0$277$14726298@news.sunsite.dk...
>>> Rune Jensen wrote:
>>>
>>>> Er det muligt?
>>> Ja.
>>> Kig efter jslibrary.asp i den backup du har.
>>> Den tager en stribe (js) filer som input, og tjekker op mod
>>> if-modified og
>>> last-modified.
>>
>> Tilbagemeldinger er åbenbart ikke oppe i tiden, men hvis andre skulle
>> have
>> samme problem, så kommer koden her:
>
> Rolig nu, jeg er i gang ;)
>
> Men takker for svar, selvfølgelig, og jeg har også lavet en (ret tidlig)
> test af det inklusive minify, men den er ikke færdig, eftersom jeg er
> ved at overveje forskellige parametre.
>
> Jeg lægger en tilbagemelding i aften, jeg skal til føsdag nu.
>
>
> MVH
> Rune Jensen


Rune Jensen (25-04-2010)
Kommentar
Fra : Rune Jensen


Dato : 25-04-10 11:05

Den 25-04-2010 11:50, Rune Jensen skrev:

>> Jeg lægger en tilbagemelding i aften, jeg skal til føsdag nu.

Nå, så fandt jeg alligevel prototypen:

Det eneste jeg har gjort på denne er at ændre .js til .css og så
indsætte korrekt content-type:

http://www.webdesigngruppen.dk/temp/join.asp?f=main,meeting

...som er en "sammensmeltning" af main-css og meeting.css i

http://www.webdesigngruppen.dk/temp/main.css

http://www.webdesigngruppen.dk/temp/meeting.css

Du har en parameter "d", jeg ikke har kigget på. Jeg overvejer en lidt
anden fremgangsmåde, så man skal vælge udfra hard coded fillist (tal),
det er bare at indsætte i array, og så kan man skrive tal i stedet for
filnavne. Jeg er ikke så god til at have det direkte i querystring.
Derudover, en parameter for minify/not minify.

Yderligere blev jeg vidst stuck ret længe i "e-tag", som jeg ikke kan
finde ud af, om har betydning, og i givet fald hvor. Det er noget med
cashing.

....jeg er ikke færdig med at kigge på mulighederne i det, som sagt, og
igen tak for svaret, Stig.


MVH
Rune Jensen

Stig Johansen (25-04-2010)
Kommentar
Fra : Stig Johansen


Dato : 25-04-10 11:35

Rune Jensen wrote:

> Rolig nu, jeg er i gang ;)

Jeg er skam helt rolig, men kom i tanke om jeg gav det svar som jeg sellv
hader...

Svaret var 'ja', uden at give en løsning, og det gavner ikke vore fremtidige
Google're - derfor min posting af løsningen.

--
Med venlig hilsen
Stig Johansen

Rune Jensen (25-04-2010)
Kommentar
Fra : Rune Jensen


Dato : 25-04-10 20:20

Den 25-04-2010 12:35, Stig Johansen skrev:
> Rune Jensen wrote:
>
>> Rolig nu, jeg er i gang ;)
>
> Jeg er skam helt rolig, men kom i tanke om jeg gav det svar som jeg sellv
> hader...
>
> Svaret var 'ja', uden at give en løsning, og det gavner ikke vore fremtidige
> Google're - derfor min posting af løsningen.

Helt i orden - jeg kan sikkert supplere indenfor et par timer eller tre.
Jeg er ved at sætte et par test-sider op, så man kan se (og forhåbentlig
på en eller anden måde måle) forskellen på før og efter.

PS.: Jeg har foreløbig kun en løsning til minify via replace på
white-space - godt nok har jeg fundet en regex til at fjerne
CSS-kommentarer også, men det var C-kode, sikkert til .NET. At lave det
selv, ved jeg sguitte rigtigt, om jeg tør.



MVH
Rune Jensen

Søg
Reklame
Statistik
Spørgsmål : 177564
Tips : 31968
Nyheder : 719565
Indlæg : 6408970
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste