{ "authors": [ "Brian Yu", "David J. Malan" ], "captions": [ { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lang/en/lecture11.srt", "srclang": "en" } ], "chapters": [ { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lang/en/index.vtt", "srclang": "en" } ], "downloads": [ { "label": "MP3", "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11.mp3?download" }, { "label": "MP4 (240p)", "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-240p.mp4?download" }, { "label": "MP4 (360p)", "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-360p.mp4?download" }, { "label": "MP4 (720p)", "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-720p.mp4?download" }, { "label": "MP4 (1080p)", "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-1080p.mp4?download" } ], "sources": [ { "label": "1080p", "source": [ { "duration": 5081, "height": 1080, "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-1080p.mp4", "type": "video/mp4", "width": 1920 } ] }, { "label": "240p", "source": [ { "duration": 5081, "height": 240, "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-240p.mp4", "type": "video/mp4", "width": 426 } ] }, { "label": "360p", "source": [ { "duration": 5081, "height": 360, "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-360p.mp4", "type": "video/mp4", "width": 640 } ] }, { "label": "720p", "source": [ { "duration": 5081, "height": 720, "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-720p.mp4", "type": "video/mp4", "width": 1280 } ] }, { "label": "1080p", "source": [ { "duration": 5081, "height": 1080, "src": [ "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-a-1080p.mp4", "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-b-1080p.mp4" ], "type": "video/mp4", "width": 1920 } ] }, { "label": "240p", "source": [ { "duration": 5081, "height": 240, "src": [ "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-a-240p.mp4", "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-b-240p.mp4" ], "type": "video/mp4", "width": 426 } ] }, { "label": "360p", "source": [ { "duration": 5081, "height": 360, "src": [ "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-a-360p.mp4", "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-b-360p.mp4" ], "type": "video/mp4", "width": 640 } ] }, { "label": "720p", "source": [ { "duration": 5081, "height": 720, "src": [ "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-a-720p.mp4", "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-b-720p.mp4" ], "type": "video/mp4", "width": 1280 } ] } ], "thumbnails": [ { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-1080p.jpg", "type": "image/jpeg" }, { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-1080p.png", "type": "image/png" }, { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-240p.png", "type": "image/png" }, { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-360p.png", "type": "image/png" }, { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11-720p.png", "type": "image/png" }, { "src": "https://cdn.cs50.net/web/2018/spring/lectures/11/lecture11.vtt", "type": "text/vtt" } ], "title": "Security - Lecture 11 - CS50's Web Programming with Python and JavaScript", "youtube": { "cameras": "mnBsfqJrBDQ", "main": "9dLTFp-1w_A", "screens": "r_lcsSNubLE" } }