[英]How do I create a page to display the html source code (only) of a website I created from Google Sheets?
我有一个使用 API 从 Google Sheets 创建的日历。 我想创建另一个页面(路由)来显示日历的 html 代码(不是呈现的模板)。 这是我的代码:
from googleapiclient.discovery import build
from google.oauth2.credentials import Credentials
from google.oauth2 import service_account
from flask import Flask
from flask import Flask, flash, jsonify, redirect, render_template, request, url_for,
session
import requests
app = Flask(__name__)
SERVICE_ACCOUNT_FILE = 'keys.json'
SCOPES = ['https://www.googleapis.com/auth/spreadsheets']
creds = None
creds = service_account.Credentials.from_service_account_file(
SERVICE_ACCOUNT_FILE, scopes=SCOPES)
# The ID and range of a sample spreadsheet.
SAMPLE_SPREADSHEET_ID = 'removed for security'
service = build('sheets', 'v4', credentials=creds)
# Call the Sheets API
sheet = service.spreadsheets()
result = sheet.values().get(spreadsheetId=SAMPLE_SPREADSHEET_ID,
range="new!A2:D9").execute()
header = sheet.values().get(spreadsheetId=SAMPLE_SPREADSHEET_ID,
range="new!A1:D1").execute()
request = sheet.values().update(spreadsheetId=SAMPLE_SPREADSHEET_ID,
range="new!A10", valueInputOption="USER_ENTERED", body=
{"values":newvalues}).execute()
@app.route('/', methods=["GET", "POST"])
def index():
values = result.get('values', [])
headers = header.get('values', [])
return render_template("index.html", values=values, headers=headers)
@app.route('/text', methods=["GET", "POST"])
def text():
t = requests.get('http://127.0.0.1:5000')
return (t.content)
if __name__ == '__main__':
app.run()
'/text' 路由显示的页面与 '/' 页面完全一样。 我希望它只返回 html 代码而不是呈现的模板。
尝试使用make_response
将响应的 mime 类型设置为text/plain
:
from flask import app, make_response, render_template
app = Flask(__name__)
@app.route('/')
def index():
resp = make_response(render_template('template.html'))
resp.mimetype = 'text/plain'
return resp
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.