Dolayısıyla, uygulamam bazı web sayfasının web görüntüleme etiketiyle yerel bir html dosyasının yeni bir penceresini açıyor. Ama ben kurabiyeleri almaya çalıştığında, bir şey alamıyorum. Bunun sebebi, çerezin webview etiketinin URL'siyle sınırlı olduğunu ancak şimdi yerel dosyamın ancak yerel dosyanın penceresini alabildiğinin nedenini düşünüyorum. Bu sorunu çözdüm mü?nwjs'nin webview etiketinin içinde çerezleri nasıl alabilirim?
1
A
cevap
2
geç olabilir ama gelecek ziyaretçiler için bu cevap verecektir: P
Ben geçici çözümler olmadan ayarlamak ve kurabiye almak için en iyi ve doğrudan yolu düşünmek olduğunu Webview istek önleyicilerin kullanıp isteği ve yanıtını değiştirme başlıkları bu daha güvenli ve güvenilir olup nodewebkit, elektron ve krom uzantıları ve uygulamalarda çalışır: Eğer "connect.sid" adında bir çerez değiştirmek istiyorum Diyelim örneğin onBeforeSendHeaders
, kullanabilirsiniz başlıklarını ayarlamak için Yani
expressjs oturum kimliği olarak kullanılan aşağıdakileri yapabilirsiniz:
Ayrıca ayarlayabilirsiniz ve bu yöntemi kullanarak ana pencere için çerez elde ancak bunun yerinewebview.request
yakalanabilmesini sen
chrome.webRequest
ya da sadece kullanmak müdahale edebilir:
var new_sessionId = "s%randskbksbdfmnsdbf345k345h34k5";
var $webview = $("#my-webview");
$webview.get(0).request.onBeforeSendHeaders.addListener(
function (details) {
details.requestHeaders.forEach(function (header) {
if (header.name === "Cookie") {
var cookies = header.value.split("; ");
var valid_cookies = cookies.filter(function (cookie) {
return cookie && cookie.indexOf("connect.sid") < 0;
});
valid_cookies.push("connect.sid=" + new_sessionId);
header.value = valid_cookies.join("; ");
}
});
return {requestHeaders: details.requestHeaders};
},
{urls: ["<all_urls>"]},
["blocking", "requestHeaders"]
);
$webview.attr("src","http://example.com");
ve başlıklarını okumak için sen onHeadersReceived
var $webview = $("#my-webview");
$webview.get(0).request.onHeadersReceived.addListener(function (details) {
details.responseHeaders.forEach(function (header) {
if (header.name === "set-cookie") {
var cookies = header.value.split("; ");
var sessionCookie = cookies.find(function (cookie) {
return cookie && cookie.indexOf("connect.sid") === 0;
});
if (sessionCookie) {
var sessionId = sessionCookie.split("=")[1];
console.log(sessionId);
}
}
});
},
{urls: ["<all_urls>"]},
["blocking", "responseHeaders"]
);
$webview.attr("src","http://example.com");
Not kullanabilirsiniz chrome.cookies.set
ve chrome.cookies.get
, tüm bunları krom kaynak kodunda buldum;)
İlgili konular
- 1. Android WebView Yönlendirmelerde Çerezleri kaybetme
- 2. WebClient'i Çerezleri kullanmak için nasıl alabilirim?
- 3. CSS hover html etiketinin içinde nasıl kullanılır?
- 4. WebView içinde yazamazsınız
- 5. Grails 2.0'da Çerezleri nasıl oluşturabilir ve alabilirim?
- 6. Android WebView kaldırCookie
- 7. Twitter videosu webview içinde görüntülenmiyor
- 8. web url'sini nasıl alabilirim
- 9. Bir form etiketinin içinde bir düğme etiketinin "gönder" davranışını nasıl geçersiz kılar (devre dışı bırakılır)?
- 10. WebView
- 11. Çerezleri kodlayıcıya nasıl gösterebilirim?
- 12. JQuery ile özellik etiketinin içinde Element Kimliği nasıl seçilir?
- 13. <xsl: attribute> etiketinin içinde boşluk bırakmak nasıl?
- 14. İçindekiler DIV etiketinin içinde yeni sekmede nasıl açılır
- 15. WinRt WebView kontrol kullanımı kontrol içinde gezinme
- 16. Bir URL başlığı nasıl alabilirim
- 17. WebView
- 18. android.webkit.CookieManager adresinden httpOnly çerezleri nasıl edinilir
- 19. Struts2 portlet çerezleri kullanarak çerezleri oku CookieInterceptor
- 20. Request.Form hatası, Windows Universal WebView içinde
- 21. js ile WebView içinde konum alma
- 22. WebView WebView Önbelleğini Şifrele
- 23. Iphone sdk içinde NSError mesajını nasıl alabilirim?
- 24. Abonelik istemcilerin listesini autobahn.ws içinde nasıl alabilirim?
- 25. C# içinde yuvalar: Yanıt akışını nasıl alabilirim?
- 26. Seçili katmanları control.layers içinde nasıl alabilirim?
- 27. UIWebView'ın tüm çerezleri nasıl silinir?
- 28. android nasıl GMail gibi webview içinde PopupMenu göstermek için
- 29. Web görünümünde webview içinde açık bağlantı nasıl olursa olsun (hızlı)
- 30. java'da oturum kimliğini nasıl alabilirim