azure上的youtube api请求不存在

2024-10-01 04:44:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我在microsoftazure上有一个小型python/flask应用程序,在这里:https://sdtflask.azurewebsites.net/#!/

这是在我的本地机器上开发的,然后推送到GitHub,在那里它会自动部署到Azure。除了应用程序的一小部分,所有东西在两端都可以正常工作,这是对youtubeapi的http请求,用于从youtube频道检索一些信息。你知道吗

这在我的本地机器上运行得很好,但是在Azure上尝试时却不行

两端代码相同:

import requests
from flask_restful import Resource

class GetChannelList(Resource):
    def get(self):
        try:
            url = "https://content.googleapis.com/youtube/v3/search?key=AIzaSyCxd3KGNNiZy-omyDH7U8Lr3zGQD6ZO448&channelId=UCvS6-K6Ydmb4gH-kim3AmjA&part=snippet,id&order=date&maxResults=50"
            r = requests.get(url).json()
            # r.raise_for_status()
            return r
        except Exception as e:
            print(str(e))
            return {'message': 'something went wrong'}

那么我有以下几点:

from flask import Flask
from flask_restful import Api
from api.get_channel_list import GetChannelList
app = Flask(__name__)

api = Api(app)

api.add_resource(GetChannelList, "/api/get_channel_list")

import FlaskWebProject1.views

然后在我的角度控制器上,我做如下操作:

angular.module('sdt')
    .controller('mainCtrl', function($scope, $http){
        $scope.showResults = function(){
            $scope.data = $http.get('api/get_channel_list').then(function(data){
                console.log(data);
                $scope.printTable(data);
            });
          }
            $scope.printTable = function(data){
                $scope.pageToken = data.data.nextPageToken;
                // $scope.fetchMore($scope.pageToken);
                $scope.items = data.data.items;
            }
    });

在我的本地机器上运行良好:

enter image description hereenter image description here

但一旦我部署到服务器,它就不会加载任何东西,这就是我在控制台的JSON上得到的结果:

enter image description here

我检查了应用程序流日志,没有显示任何错误,也没有python错误,这让我相信也许azure阻止了请求?有人知道会发生什么吗?任何关于我下一步可能做什么的建议都将不胜感激。提前谢谢


Tags: fromhttpsimport机器api应用程序httpflask