gpt4 book ai didi

javascript - AngularJS $http.jsonp 缓存

转载 作者:行者123 更新时间:2023-11-29 22:13:27 24 4
gpt4 key购买 nike

我在缓存 JSONP 请求时遇到问题。

我已经尝试过 $http.jsonp(url, { cache: true }) 但似乎没有用。

我也试过 $http({ method: 'JSONP', url: url, cache: true }) 无济于事。

相反,我求助于手动缓存结果(下面是非常粗略的工作示例)。

AngularJS 可以为我做这个缓存吗?

countries.factory 'Wikipedia',
['$http', '$q', ($http, $q) ->
cache = {}

getSummary: (country) ->
if cache.hasOwnProperty(country)
cache[country]
else
summary = $q.defer()
url = "http://en.wikipedia.org/w/api.php?action=query&prop=revisions&rvprop=content&rvsection=0&rvparse=1&titles=#{country}&format=json&redirects=1&callback=JSON_CALLBACK"

$http.jsonp(url).success (data) ->
# process data ....
paragraphs = ['p1', 'p2']

# return summary content paragraphs
cache[country] = paragraphs
summary.resolve paragraphs

summary.promise
]

最佳答案

从版本 1.0.7/1.1.5 开始,$http 似乎只支持 GET 方法请求的缓存。

  • Here是一个关于它的公开 github 问题的链接。
  • Here是一个包含一些附加信息的封闭拉取请求。

$http documentation 的缓存部分只提到 GET 请求被缓存。

关于javascript - AngularJS $http.jsonp 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16762158/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com