from flask import Flask, jsonify, request
from datetime import datetime

app = Flask(__name__)

@app.route('/hello', methods=['GET'])
def hello():
    """GET /hello - Returns a greeting message"""
    return jsonify({'message': 'Hello, World!'})

@app.route('/time', methods=['GET'])
def time():
    """GET /time - Returns current server time"""
    return jsonify({'time': datetime.now().isoformat()})

@app.route('/echo', methods=['POST'])
def echo():
    """POST /echo - Echoes back the JSON body"""
    data = request.get_json()
    if data is None:
        return jsonify({'error': 'No JSON body provided'}), 400
    return jsonify({'echo': data})

if __name__ == '__main__':
    app.run(debug=True)
