Build a reponse containing a single local_file.

Returns a 404 error if local_file does not exists.

Property definitions

nitcorn $ FileServer :: answer_file
	# Build a reponse containing a single `local_file`.
	#
	# Returns a 404 error if local_file does not exists.
	fun answer_file(local_file: String): HttpResponse do
		if not local_file.file_exists then return new HttpResponse(404)

		var response = new HttpResponse(200)
		response.files.add local_file

		# Set Content-Type depending on the file extension
		var ext = local_file.file_extension
		if ext != null then
			var media_type = media_types[ext]
			if media_type != null then
				response.header["Content-Type"] = media_type
			else response.header["Content-Type"] = "application/octet-stream"
		end

		# Cache control
		response.header["cache-control"] = cache_control
		return response
	end
lib/nitcorn/file_server.nit:152,2--173,4