我在Microsoft Azure上有一个小的python / flask应用程序,在这里:https://sdtflask.azurewebsites.net/#!/
这是在我的本地计算机上开发的,然后推送到GitHub,它会自动部署到Azure。除了应用程序的一小部分外,所有内容都可以正常工作,这是对youtube API的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控制器上执行以下操作:
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;
}
});
它在我的本地机器上工作正常:
但是一旦我部署到服务器,它就不会加载任何内容,这就是我在控制台上获得的JSON:
我检查了应用程序流日志并且没有显示错误,也没有python错误,这让我相信azure会阻止请求吗?任何人都知道可能会发生什么?关于我下一步该做什么的任何指示将不胜感激。提前致谢
答案 0 :(得分:1)
也许Python Requests throwing up SSLError会帮助您找出发生SSLException
的原因
看起来最快的解决方法是设置verify=False
。 (取自链接中的答案)