none
Html Çıktısını Encode Yapmak RRS feed

  • Soru

  • Merhaba arkadaşlar,

    Sunucumun fiziksel diskinden embed ile bir pdf gösteriyorum.

    Bunu kaynadğı görüntüle diyen vatandaş Guid ile oluşturulmuş yolu görüyor. sonra siteye giriş yapmadan da bu yol ile pdf e ulaşabiliyor.

    Bunu nasıl engelleyebilirim ?

    html çıktısını şifrelemek gerekirse örnek bir kod verebilir misiniz ?

    embed kodum:

    string embed = "<object data=\"{0}\" type=\"application/pdf\" width=\"100%\" height=\"700px\">";
                        embed += "Mobil cihazdan giriş yaptınız. Pdf Belgesini görüntülemek için lütfen <a href = \"{0}\">TIKLAYIN.</a>";
                        embed += "</object>";
    
    
    
                        ltEmbed.Text = string.Format(embed, ResolveUrl(mypdf));

    28 Mart 2016 Pazartesi 12:47

Yanıtlar

  • Recep kardeş; şimdi standart olmayan yöntemler kullanınca ister istemez problemler oluşacaktır. Session bu tarz önemli işler için kullanılmaz. Kullanılır da güvenilir olmaz. Neyse o zaman üyelik ile klasör engellemeden vazgeçtin sanırım.

    Bu durumda Anetcurs (doğru mu yazdım acep ~:( ) arkadaşın dediği gibi bir handler yazmalısın, orda browsere bir zip dosyası response edeceğini content-dispositionunu belirtiyorsun, birde content-length eklersen kullanıcılar downloadın ne kadar kaldığını da görebilirler. Yani generic handler yada httphandler olmadan sessionla cookie ile bu işi yapamazsın.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    • Yanıt Olarak İşaretleyen RecepKurum 29 Mart 2016 Salı 14:35
    29 Mart 2016 Salı 13:35
    Moderatör
  • Recep kardeş; şimdi standart olmayan yöntemler kullanınca ister istemez problemler oluşacaktır. Session bu tarz önemli işler için kullanılmaz. Kullanılır da güvenilir olmaz. Neyse o zaman üyelik ile klasör engellemeden vazgeçtin sanırım.

    Bu durumda Anetcurs (doğru mu yazdım acep ~:( ) arkadaşın dediği gibi bir handler yazmalısın, orda browsere bir zip dosyası response edeceğini content-dispositionunu belirtiyorsun, birde content-length eklersen kullanıcılar downloadın ne kadar kaldığını da görebilirler. Yani generic handler yada httphandler olmadan sessionla cookie ile bu işi yapamazsın.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    Teşekkürler hocam arkadaşın verdiği gibi bir kod ve yardımlarınız ile çözüme ulaştım . lakin şöyle bir durum var

    kullandığım bu yapıda andoid telefonlarda pdf i indirmiyor tablette indiriyor pc de gösteriyor :)

    android telefonlarda neden indirme yapmadığını buldum 

    Response.AddHeader("Content-Disposition", "attachment; filename=pdfismi.pdf");

    bu kodu ekledim ve telefon ve tabletlerde indirdi. bu sefer de pc de de göstermeden direkt download işlemini yapıyor

    Peki hocam benim kod tarafında giriş yapan cihaz android ise;

    if (isandorid ==true)

    {

    bu kod blogunu çalıştır

    }

    else

    {

    bu kod blogunu çalıştır

    }

    gibi bir çözüm geliştirirsem proje ile ilgili sorunum kalmamış olacak

    • Yanıt Olarak İşaretleyen RecepKurum 29 Mart 2016 Salı 14:35
    29 Mart 2016 Salı 14:14

Tüm Yanıtlar

  • Şifrelemek bir çözüm sağlamaz (http isteği bildiğin üzere açık gidecek), bu gibi durumda tek kullanımlık veya süreli linkler oluşturabilirsin. Bunun için bir download handler yazman gerekecek. 


    28 Mart 2016 Pazartesi 13:47
    Moderatör
  • Şifrelemek bir çözüm sağlamaz (http isteği bildiğin üzere açık gidecek), bu gibi durumda tek kullanımlık veya süreli linkler oluşturabilirsin. Bunun için bir download handler yazman gerekecek. 


    Hocam tipik kullanıcı en azından kaynağı görüntüle dediğinde orada abez şeklide url görünmemesi benim için yeterli olacaktır fakat bir çözüme ulaşamadım bununla ilgili
    28 Mart 2016 Pazartesi 14:01
  • Merhaba;

    Senaryo şu ise :

    Normal kullanıcı bu link  i göremesin.

    Çok basitçe bu link i içeren -- Guid -- i cookie ye yazın.

    cookie de süre sınırlayabilirsiniz.

    Kolay Gelsin.


    HNG ═══ᵌ Ữ

    28 Mart 2016 Pazartesi 14:36
  • Merhaba;

    Senaryo şu ise :

    Normal kullanıcı bu link  i göremesin.

    Çok basitçe bu link i içeren -- Guid -- i cookie ye yazın.

    cookie de süre sınırlayabilirsiniz.

    Kolay Gelsin.


    HNG ═══ᵌ Ữ

    hocam cookie ye yazdım diyelim veya session a peki ya sonrası  ?
    28 Mart 2016 Pazartesi 14:47
  • Merhaba;

    Session maliyeti yüksek olabilir. çok kullanıcı çok RAM demek.

    Cookie ise client tarafında. Size bir maliyeti yok.

    istediğiniz süre içinde orada kalacak, süresi bitince kendi silecek.

    Yani size hiç bir maliyeti yok.

    Sadece ilgili cookie yi okuyup karar vereceksiniz.

    Kolay Gelsin.

    Not : cookie okuma yöntemi istiyorsanız :

    https://msdn.microsoft.com/en-us/library/windows/desktop/aa384321(v=vs.85).aspx


    HNG ═══ᵌ Ữ

    28 Mart 2016 Pazartesi 14:52
  • Merhaba;

    Session maliyeti yüksek olabilir. çok kullanıcı çok RAM demek.

    Cookie ise client tarafında. Size bir maliyeti yok.

    istediğiniz süre içinde orada kalacak, süresi bitince kendi silecek.

    Yani size hiç bir maliyeti yok.

    Sadece ilgili cookie yi okuyup karar vereceksiniz.

    Kolay Gelsin.

    Not : cookie okuma yöntemi istiyorsanız :

    https://msdn.microsoft.com/en-us/library/windows/desktop/aa384321(v=vs.85).aspx


    HNG ═══ᵌ Ữ

    hocam şöyle şimdi ben gelen veriyi yazdım cookie ye diyelim .

    benim yukarıdaki kodum bi embed oluşturuyorum ve bunu literal e gönderiyorum.

    peki oluşturduğum cookie yi okudum diyelim kod tarafında bunu yine literal e gönderdiğimde embed içindeki url kısmında url yine görünecek 

    bu kısmı tam çözemedim sonrası derken hocam

    28 Mart 2016 Pazartesi 14:56
  • Merhaba;

    işleminiz postBack olunca Page_Load a gelecek.

    Siz o sayfayı hangi sebep ile kullanıcıya gönderdiyseniz.

    Yine o sebep ile ilgili cookie yi işleyeceksiniz.

    Kolay Gelsin.

    Not :

    Aslında göstermek istemediğiniz her şeyi client tarafında yapmalısınız.

    Bunun için cookie çok basit/en basit yöntem.


    HNG ═══ᵌ Ữ

    28 Mart 2016 Pazartesi 15:02
  • Merhaba;

    işleminiz postBack olunca Page_Load a gelecek.

    Siz o sayfayı hangi sebep ile kullanıcıya gönderdiyseniz.

    Yine o sebep ile ilgili cookie yi işleyeceksiniz.

    Kolay Gelsin.

    Not :

    Aslında göstermek istemediğiniz her şeyi client tarafında yapmalısınız.

    Bunun için cookie çok basit/en basit yöntem.


    HNG ═══ᵌ Ữ

    hocam işte bende bunu diyorum ben bu dosyanın yolunu default.aspx ten cookie olarak yarattım.

    E sonra goster.aspx te cookie yi okudum ve embed kodumun içerisine yine yazdım sonuc yine aynı değişen ne bana örnek bir kod verebilir misiniz yukarıdaki embed kodumu kullanıyorum

    29 Mart 2016 Salı 06:43
  • Yazıyorum ama siliyorum... neyse... anlayan kendini biliyordur (herhalde)

    RecepKurum; asp.net te bir klasörü web.config ile unauthorized kullanıcılara izole edebilirsin. PDF i bir sanal klasöre koymak ve içine bir web.config dosyası eklemek yeterli;

    <system.web>
      <authorization>
        <allow roles="Administrators,Members" />
        <deny users="*"/>
      </authorization>
    </system.web>

    Ek: bak buradan faydalanabilirsin; https://msdn.microsoft.com/en-us/library/8d82143t%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

    insan yanıt verirken bi düşünür ya "http nedir html, nedir, session nedir, cookie nedir ben bunların ne olduğunu biliyormuyum acaba" diye


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com



    29 Mart 2016 Salı 07:17
    Moderatör
  • Şöyle bir şey yapsanız.
    Default.aspx

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="webtest._default" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
        <a href="/test.aspx">test</a>
        </div>
        </form>
    </body>
    </html>
    Test.aspx.cs
    namespace webtest
    {
        public partial class test : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                Response.Redirect("/file.ashx");
            }
        }
    }
    File.ashx
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Web;
    
    namespace webtest
    {
        /// <summary>
        /// Summary description for File
        /// </summary>
        public class File : IHttpHandler
        {
    
            public void ProcessRequest(HttpContext context)
            {
                string FilePath = HttpContext.Current.Server.MapPath("~/Untitled.pdf");
                context.Response.ContentType = "Application/zip";
                context.Response.AppendHeader("Content-Disposition", "attachment; filename=" + (new FileInfo("~/Untitled.pdf")).Name);
                context.Response.TransmitFile(FilePath);
            }
    
            public bool IsReusable
            {
                get
                {
                    return false;
                }
            }
        }
    }


    29 Mart 2016 Salı 07:21
  • Yazıyorum ama siliyorum... neyse... anlayan kendini biliyordur (herhalde)

    RecepKurum; asp.net te bir klasörü web.config ile unauthorized kullanıcılara izole edebilirsin. PDF i bir sanal klasöre koymak ve içine bir web.config dosyası eklemek yeterli;

    <system.web>
      <authorization>
        <allow roles="Administrators,Members" />
        <deny users="*"/>
      </authorization>
    </system.web>

    Ek: bak buradan faydalanabilirsin; https://msdn.microsoft.com/en-us/library/8d82143t%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

    insan yanıt verirken bi düşünür ya "http nedir html, nedir, session nedir, cookie nedir ben bunların ne olduğunu biliyormuyum acaba" diye


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com



    Hocam tam olarak şöyle C bölümü üzerinde fiziksel dosyam var

    ISS ten bunu virtualpath olarak ekledim siteme.

    buraya kadar sıkıntı yok sitede ben gösteriyorum pdf i de. ama vatandaş kaynağı götüntülediğinde html çıktısı olarak ;

    <object
    data="/Sitedizini/SanalDizin/3F89BD7C-5F6C-412A-B442-F1D325B22538/5EC3A254-ED96-4394-816B-832744779678.pdf"
    type="application/pdf"
    width ="100%"
    height="700px">Mobil cihazdan giriş yaptınız. Pdf
     Belgesini görüntülemek için lütfen <a
    href = "/Sitedizini/SanalDizin/3F89BD7C-5F6C-412A-B442-F1D325B22538/5EC3A254-ED96-4394-816B-832744779678.pdf">TIKLAYIN.</a></object>


    şeklinde kaynağı görüyor ve bu url yi siteye giriş yapmadan da artık erişebilir aldığı zaman.

    ya ben bu url yi şifrelemem gerekiyor ya dizine direkt erişimi kapatmam gerekiyor yada benim aklıma gelmeyen farklı bir yöntem

    bu object kodunu literal e kod tarafında hazırlayıp gömüyorum.


    29 Mart 2016 Salı 07:57
  • Şöyle bir şey yapsanız.
    Default.aspx

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="webtest._default" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
        <a href="/test.aspx">test</a>
        </div>
        </form>
    </body>
    </html>
    Test.aspx.cs
    namespace webtest
    {
        public partial class test : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                Response.Redirect("/file.ashx");
            }
        }
    }
    File.ashx
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Web;
    
    namespace webtest
    {
        /// <summary>
        /// Summary description for File
        /// </summary>
        public class File : IHttpHandler
        {
    
            public void ProcessRequest(HttpContext context)
            {
                string FilePath = HttpContext.Current.Server.MapPath("~/Untitled.pdf");
                context.Response.ContentType = "Application/zip";
                context.Response.AppendHeader("Content-Disposition", "attachment; filename=" + (new FileInfo("~/Untitled.pdf")).Name);
                context.Response.TransmitFile(FilePath);
            }
    
            public bool IsReusable
            {
                get
                {
                    return false;
                }
            }
        }
    }


    ashx dosyasındaki kod kısmı işimi görmemiyor hocam :(

    çalıştırdığım kod bloğumu attım benim farklı birşeye ihtiyacım var şu url yi kaynakta ya yanlış yolda göstermem gerekiyor yada gizlemem 

    29 Mart 2016 Salı 08:01
  • Bir şey anlamadım. Linki saklıyor işte. test.aspx ise siz farklı bir sayfa olsun dediğiniz için. Burada düzenleme yapmanız lazım yalnız.

    Her istekde bir Guid üretip o guidi kullanmak gibi işlemlerde yapılabilir.
    29 Mart 2016 Salı 08:25
  • Bir şey anlamadım. Linki saklıyor işte. test.aspx ise siz farklı bir sayfa olsun dediğiniz için. Burada düzenleme yapmanız lazım yalnız.

    Her istekde bir Guid üretip o guidi kullanmak gibi işlemlerde yapılabilir.

    hocam bana gelen bir dizin yolu var bu yoldan direkt görüntüleme yapıyorum diğer sayfamda.

    Sizin verdiğiniz bu koda ben pdf adını gönderdiğimde bana yine aynı dizini döndür müyor mu ?

     string FilePath = HttpContext.Current.Server.MapPath("~/Untitled.pdf");
                context.Response.ContentType = "Application/zip";
                context.Response.AppendHeader("Content-Disposition", "attachment; filename=" + (new FileInfo("~/Untitled.pdf")).Name);
                context.Response.TransmitFile(FilePath);

    ilk satır zaten servermappath ile yol buluyor bende zaten yol tamamen mevcut getiriyorum o hazır yani.

    sonuç olarak bana yine aynı yolu döndürmüyor mu  ?


    29 Mart 2016 Salı 08:32
  • Kullanıcı bunu nerden biliyor?
    29 Mart 2016 Salı 08:51
  • Sen linki gizlemeye çalışıyorsun, bunu yapma, gizleyemezsin. Gizlesen bu sefer indirmesi gereken indiremez. Ya Cihan'ın dediği gibi ticket oluşturup bir generic handler ile o ticket'e göre anlık dosya linki, oluşturacaksın ya da klasörü login olmamış kullanıcılara kapatacaksın. Bunu yaparsan linki bilse bile login olmadan indiremez.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    29 Mart 2016 Salı 08:57
    Moderatör
  • Sen linki gizlemeye çalışıyorsun, bunu yapma, gizleyemezsin. Gizlesen bu sefer indirmesi gereken indiremez. Ya Cihan'ın dediği gibi ticket oluşturup bir generic handler ile o ticket'e göre anlık dosya linki, oluşturacaksın ya da klasörü login olmamış kullanıcılara kapatacaksın. Bunu yaparsan linki bilse bile login olmadan indiremez.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    hocam şöyle ki pdf ler önemli olacak bu sebepten kim girdi kim ne okudu vs bunları görmem gerekiyor. site everyone bir site olmayacak bu sebepten benim bu virtualpath e direkt erişimi kapatmam gerekiyor yada saçma sapan geçici bir url ile . yani sisteme giriş yapmadan kimse okuyamacak . anca girecek o zaman embed ile gösteriyorum zaten öyle indirebilir ama diğer türlü adam bi kez girdi okudu diyelim sonrasında kaynaktan yolu bulsa bidaha sisteme giriş yapmaya gerek kalmayacak  kapalı kutu gibi mantık . anahtarı olan her defasında girebilir şeklinde hocam
    29 Mart 2016 Salı 09:09
  • Kullanıcı bunu nerden biliyor?

    hocam bi kez giriş yapan html de kaynağı görüntülese yetiyor birdaha sürekli okuyabiliyor her yerden. ben sistemde okuma giriş vs tüm logları da tutuyorum . sistem kapalı olacak yani hocam o sebepten çakıldım kaldım dünden beri siteye giriş yapan url ye sahip olsun okusun veya kopyaladı diyelim url yi pdf in tarayıcıya yapıştırdı ve ok dedi açılmamalı sanal dizine direkt erişim yapamamalı .

    29 Mart 2016 Salı 09:11
  • <?xml version="1.0"?>
     <location path="Mypdf">
       <system.web>
         <authorization>
            <deny users="*" />
            <allow users="YES"/>
         </authorization>
       </system.web>
    </location>


    bunu pdf lerin olduğu tepe klasöre yerleştirdim.

    login sayfama ;

      
    FormsAuthentication.SetAuthCookie("YES", false);
    
                        FormsAuthenticationTicket ticket1 =
                           new FormsAuthenticationTicket(
                                1,                                   // version
                                "YES",   // get username  from the form
                                DateTime.Now,                        // issue time is now
                                DateTime.Now.AddMinutes(30),         // expires in 10 minutes
                                false,      // cookie is not persistent
                                "YES"                              // role assignment is stored
                                                                  // in userData
                                );
                        HttpCookie cookie1 = new HttpCookie(
                          FormsAuthentication.FormsCookieName,
                          FormsAuthentication.Encrypt(ticket1));
                        Response.Cookies.Add(cookie1);

    bu kodu mu ekledim.

    Direkt url yi yazdığımda artık erişemiyorum ama giriş yapan vatandaşta erişemiyor hocam


    29 Mart 2016 Salı 09:14
  • Burda YES isimli bir user'e izin veriyorsun. Bu dosyayı indirebilecek üyelerin bir Role'e dahil değil mi? Üye adına izin vermek yerine yukarda verdiğim gibi komple o Role'e izin versen girerler.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    29 Mart 2016 Salı 10:54
    Moderatör
  • Burda YES isimli bir user'e izin veriyorsun. Bu dosyayı indirebilecek üyelerin bir Role'e dahil değil mi? Üye adına izin vermek yerine yukarda verdiğim gibi komple o Role'e izin versen girerler.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    Hocam  ben login sayfasından itibaren session ile   anasayfa >pdfgoster     sayfalarında gezdiyirorum kullanıcıyı

    login e bu kodu ekledim . pdf lerin anadizinine de ekledim ama başarılı olamadım :(

    29 Mart 2016 Salı 11:06
  • Burda YES isimli bir user'e izin veriyorsun. Bu dosyayı indirebilecek üyelerin bir Role'e dahil değil mi? Üye adına izin vermek yerine yukarda verdiğim gibi komple o Role'e izin versen girerler.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    Hocam  ben login sayfasından itibaren session ile   anasayfa >pdfgoster     sayfalarında gezdiyirorum kullanıcıyı

    login e bu kodu ekledim . pdf lerin anadizinine de ekledim ama başarılı olamadım :(

    hocam  bu olayı neden yapmak istiyorum ;

    string mypdf = Session["pdfyolu"].ToString();
    
    
                        string FilePath = mypdf;
    
    
    
                        WebClient User = new WebClient();
                        Byte[] FileBuffer = User.DownloadData(FilePath);
                        if (FileBuffer != null)
                        {
                            Response.ContentType = "application/pdf";
                            Response.AddHeader("content-length", FileBuffer.Length.ToString());
                            Response.BinaryWrite(FileBuffer);
                        }

    burada pdf yolumu alıyorum ve direkt tarayıcıda açıyorum kaynak kod kısmıda çok farip çıkıyor dolayısı ile. Ama android cihazlarda response.binarywrite komutu çalışmıyor. bunu başarmış olsam bu aksiyona zaten gerek kalmayacak


    29 Mart 2016 Salı 12:05
  • Recep kardeş; şimdi standart olmayan yöntemler kullanınca ister istemez problemler oluşacaktır. Session bu tarz önemli işler için kullanılmaz. Kullanılır da güvenilir olmaz. Neyse o zaman üyelik ile klasör engellemeden vazgeçtin sanırım.

    Bu durumda Anetcurs (doğru mu yazdım acep ~:( ) arkadaşın dediği gibi bir handler yazmalısın, orda browsere bir zip dosyası response edeceğini content-dispositionunu belirtiyorsun, birde content-length eklersen kullanıcılar downloadın ne kadar kaldığını da görebilirler. Yani generic handler yada httphandler olmadan sessionla cookie ile bu işi yapamazsın.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    • Yanıt Olarak İşaretleyen RecepKurum 29 Mart 2016 Salı 14:35
    29 Mart 2016 Salı 13:35
    Moderatör
  • Recep kardeş; şimdi standart olmayan yöntemler kullanınca ister istemez problemler oluşacaktır. Session bu tarz önemli işler için kullanılmaz. Kullanılır da güvenilir olmaz. Neyse o zaman üyelik ile klasör engellemeden vazgeçtin sanırım.

    Bu durumda Anetcurs (doğru mu yazdım acep ~:( ) arkadaşın dediği gibi bir handler yazmalısın, orda browsere bir zip dosyası response edeceğini content-dispositionunu belirtiyorsun, birde content-length eklersen kullanıcılar downloadın ne kadar kaldığını da görebilirler. Yani generic handler yada httphandler olmadan sessionla cookie ile bu işi yapamazsın.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    Teşekkürler hocam arkadaşın verdiği gibi bir kod ve yardımlarınız ile çözüme ulaştım . lakin şöyle bir durum var

    kullandığım bu yapıda andoid telefonlarda pdf i indirmiyor tablette indiriyor pc de gösteriyor :)

    android telefonlarda neden indirme yapmadığını buldum 

    Response.AddHeader("Content-Disposition", "attachment; filename=pdfismi.pdf");

    bu kodu ekledim ve telefon ve tabletlerde indirdi. bu sefer de pc de de göstermeden direkt download işlemini yapıyor

    Peki hocam benim kod tarafında giriş yapan cihaz android ise;

    if (isandorid ==true)

    {

    bu kod blogunu çalıştır

    }

    else

    {

    bu kod blogunu çalıştır

    }

    gibi bir çözüm geliştirirsem proje ile ilgili sorunum kalmamış olacak

    • Yanıt Olarak İşaretleyen RecepKurum 29 Mart 2016 Salı 14:35
    29 Mart 2016 Salı 14:14
  • Recep kardeş; şimdi standart olmayan yöntemler kullanınca ister istemez problemler oluşacaktır. Session bu tarz önemli işler için kullanılmaz. Kullanılır da güvenilir olmaz. Neyse o zaman üyelik ile klasör engellemeden vazgeçtin sanırım.

    Bu durumda Anetcurs (doğru mu yazdım acep ~:( ) arkadaşın dediği gibi bir handler yazmalısın, orda browsere bir zip dosyası response edeceğini content-dispositionunu belirtiyorsun, birde content-length eklersen kullanıcılar downloadın ne kadar kaldığını da görebilirler. Yani generic handler yada httphandler olmadan sessionla cookie ile bu işi yapamazsın.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com

    Teşekkürler hocam arkadaşın verdiği gibi bir kod ve yardımlarınız ile çözüme ulaştım . lakin şöyle bir durum var

    kullandığım bu yapıda andoid telefonlarda pdf i indirmiyor tablette indiriyor pc de gösteriyor :)

    android telefonlarda neden indirme yapmadığını buldum 

    Response.AddHeader("Content-Disposition", "attachment; filename=pdfismi.pdf");

    bu kodu ekledim ve telefon ve tabletlerde indirdi. bu sefer de pc de de göstermeden direkt download işlemini yapıyor

    Peki hocam benim kod tarafında giriş yapan cihaz android ise;

    if (isandorid ==true)

    {

    bu kod blogunu çalıştır

    }

    else

    {

    bu kod blogunu çalıştır

    }

    gibi bir çözüm geliştirirsem proje ile ilgili sorunum kalmamış olacak

    http://www.codeproject.com/Articles/34422/Detecting-a-mobile-browser-in-ASP-NET

    buradaki kod işe yarıyor buldum belki arayan olur mobil cihaz tespiti asp.net

    29 Mart 2016 Salı 14:35