Search code examples
ios7video-streamingmobile-safarijwplayerhttp-live-streaming

iOS 7 Safari: jwplayer not sending cookie to load m3u8 file (encrypted hls stream)


My setup is as follows

  1. Webapp hosted at domain A.
  2. HLS videos hosted at domain B (.m3u8, .ts and .key files)
  3. After loading wbeapp, I create cookie for domain B by loading iframe of domain B (empty iframe)
  4. Try to play video using jwplayer which takes path of m3u8 file hosted at domain B.
  5. In server B I use cookie to verify if request is authentic and server content.

Everything works perfectly fine on all browsers but on iOS 7 safari, domain cookie is not being sent to domain B along with m3u8 file. I have checked safari settings to never block cookie.

Does anyone know why I am not getting cookie? Am I missing any setting or something? Please let me know for any clarification.

Thank you so much

EDIT It is not the issue with JWPlayer but iOS 7 device. (Please refer to comments) For now I made work around to create session in first call when serving m3u8 file. This session is being passed to subsequent requests.


Solution

  • For some reason, Safari decided to ignore the third party cookie, so you cannot set the cookie from your B site with the iframe where your user is trying to access A site.