在进行路由时,我遇到了一些奇怪的弹簧启动+角度js行为。虽然路由工作正常但其他方式重定向不起作用。
例如:
我已经配置,但它没有任何好处
以下是我的代码:
.config(['$routeProvider','$httpProvider',function ($routeProvider, $httpProvider) {
$routeProvider.when('/analysis', {
templateUrl : '../resources/views/includes/dashboard.html',
controller : "RegistrationController"
}).when('/', {
templateUrl : '../resources/views/includes/profile.html',
controller : "RegistrationController"
})
.otherwise({
redirectTo: '/'
});
$httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest';
}]);
我已放入html
答案 0 :(得分:0)
我建议你看一下$locationProvider.html5Mode(true)
。
它告诉angularJS使用HTML5策略(如果可用)。基本上,那些不支持HTML5的浏览器需要#
。
此外,您还需要配置html的<base>
标记。
即使您将实施这些概念,您也会偶然发现我面临的另一个问题。如果您通过应用程序中的href
进行导航,它会起作用,但是如果您复制url
并将其直接粘贴到浏览器中,则会出现错误,因为它会直接命中服务器并且将尝试在服务器上找到必要的URL映射。
有关详细信息,请查看此this question which I asked for this issue
我希望它会有所帮助。
答案 1 :(得分:0)
您的问题与SEO相关的AngularJS实现更相关,基本上,解决方案是使用Apache或Nginx的def show_tweets(request):
if request.GET['hashtag'] and request.GET['user']:
template = loader.get_template('error.html')
return HttpResponse(template.render({},request))
else:
if request.GET['hashtag']:
hashtag= request.GET['hashtag']
try: all_tweets = tweepy.Cursor(api.search, q=hashtag + ' -filter:retweets', tweet_mode='extended').items(100)
except: print("error")
d = {}
cnt = 0
for t in all_tweets:
cnt += 1
d['Tweet_' + str(cnt)] = t._json
dump_d = json.dumps(d)
json_d = json.loads(dump_d)
else:
user = request.GET['user']
try: all_tweets = api.user_timeline(screen_name=user, count=100, include_rts=True, tweet_mode='extended')
except: print("error")
d = {}
cnt = 0
for t in all_tweets:
cnt += 1
d['Tweet_' + str(cnt)] = t._json
dump_d = json.dumps(d)
json_d = json.loads(dump_d)
context = {'json_d': json_d.items()}
return render(request,'show_tweets.html',context)
def save_tweet(request):
data = request.POST.get('tweet_id')
print(data);
#tweets(Text = data).save()
return render(request,'success.html')
功能。
有关详细信息,您可以启动here。