쿠키 를 설정하고 읽기 위해 jQuery 쿠키 플러그인 ( 다운로드 및 데모 및 주석 포함 소스 코드 )을 사용하고 있습니다. 내 로컬 컴퓨터 에서 페이지를 개발 중 입니다 .
다음 코드는 FireFox 3, IE 7 및 Safari (PC)에서 쿠키를 성공적으로 설정합니다. 그러나 브라우저가 Google 크롬이고 페이지가 로컬 파일 인 경우 작동하지 않습니다.
$.cookie("nameofcookie", cookievalue, {path: "/", expires: 30});
내가 아는 것 :
- 플러그인의 데모 는 Chrome에서 작동합니다.
- 내 코드를 웹 서버 (http : //로 시작하는 주소)에 넣으면 Chrome에서 작동합니다.
따라서 쿠키 는 로컬 파일의 Google 크롬 에서만 실패 합니다 .
가능한 원인 :
- Google 크롬은 하드 드라이브의 웹 페이지 (file : /// C : /websites/foo.html과 같은 경로)의 쿠키를 허용하지 않습니다.
- 플러그인 암시의 일부로 인해 Chrome에서 이러한 쿠키를 거부합니다.
누구든지 이것을 확인하고 근본 원인을 확인할 수 있습니까?
답변
Chrome은 –enable-file-cookies 플래그로 시작하지 않는 한 로컬 파일 (또는 Peter Lyons가 언급 한 것처럼 localhost *)에 대한 쿠키를 지원하지 않습니다. http://code.google.com/p/chromium/issues/detail?id=535 에서 이에 대한 토론을 읽을 수 있습니다 .
* Chrome 은 로컬 IP 주소 (127.0.0.1)를 직접 사용하는 경우 쿠키를 지원합니다. 따라서 localhost의 경우 더 쉬운 해결 방법이 될 수 있습니다.
답변
로컬 애플리케이션의 경우 대신 Chrome에서 localStorage를 사용합니다.
http://people.w3.org/mike/localstorage.html
답변
나는 약간의 문제가 있었고이 끔찍한 해결책을 해결했습니다. 스토어와 쿠키 플러그인을 함께 사용합니다.
<script src="js/jquery.cookies.2.2.0.js" type="text/javascript"></script>
<script src="js/jquery.Storage.js" type="text/javascript"></script>
var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
//get cookies
var helpFlag=(is_chrome)?$.Storage.get("helpFlag"):$.cookies.get("helpFlag");
//set cookies
if(is_chrome)$.Storage.set("helpFlag", "1");else $.cookies.set("helpFlag", "1");
이것이 완벽한 솔루션은 아니지만 저에게 효과적이라는 것을 알고 있습니다.
답변
답변
동일한 문제가 발생했습니다. 대신 localhost의 IP 주소를 사용해보십시오. 예 : “http://127.0.0.1/yoursite/”
답변
쿠키 및 Google Analytics 를 확인하십시오 .
$.cookie("nameofcookie", cookievalue, {path: "/", expires: 30});
이 줄을
$.cookie("nameofcookie", cookievalue, {*Path:* "/", expires: 30});
이 프로젝트는 잘 작동합니다.
답변
또 다른 가능한 원인은 path: "/"
일반 웹 URL을 사용 /
하지 않기 때문에별로 의미가 없을 것입니다. 경로를 전혀 설정하지 않고 시도해보세요.