前端:当不需要返回数据时用Ajax发送请求代价是不是有些大?

前端:当不需要返回数据时用Ajax发送请求代价是不是有些大,那用什么比较好?除了表单中的get/post方式之外还有什么?
全部评论
http://www.zhihu.com/question/20215561 代价与答案应该是文中提到的这样吧
点赞 回复 分享
发布于 2016-10-16 17:34
你这概念错了吧,AJAX是所有asychronous communications的总称,如果【不用AJAX】意思就是你想要发个request就刷新一次页面是么?这样难道代价不是更大? 你的意思是不用XHR吗?如果你是想避免roundtrip latency和TCP handshakes的代价,那就只能从一开始就用keep-alive connection了,当然代价就是CPU Cycles和Battery life(如果在移动设备上)。但是如果你的数据流量不大,XHR或者Fetch API的代价小到你都不用去profile,这些根本不是需要考虑的问题。 不用XHR,难道你要用WebSocket吗?如果你的数据流量大request非常频繁,并且服务器支持WebSocket,当然可以用。
点赞 回复 分享
发布于 2016-10-16 11:08
那么问题来了,不用ajax怎么确定你的数据被成功接收了。
点赞 回复 分享
发布于 2016-10-16 10:33

相关推荐

大致就是完善一个购物车,结算购物车金额的题,极其简单,但是我测试用例只过了50%代码如下,哪个大佬能帮忙看看问题import java.math.BigDecimal;import java.math.RoundingMode;import java.util.*;class Solution {// 购物车集合public Map<Product, Integer> cart;public Solution() {cart = new HashMap<>();}public void addProductToCart(Product product, int quantity) {cart.put(product,cart.getOrDefault(product,0)+quantity);}public void removeProduct(Product product) {cart.remove(product);}public String getTotalAmount() {BigDecimal amount =BigDecimal.ZERO;for (Map.Entry<Product, Integer> entry : cart.entrySet()) {String price = entry.getKey().getPrice();Integer quantity = entry.getValue();BigDecimal priceVal = new BigDecimal(price);BigDecimal temp = priceVal.multiply(new BigDecimal(quantity)).setScale(2,RoundingMode.HALF_UP);amount = amount.add(temp);}String totalamount = String.valueOf(amount);return totalamount;}}class Product {private String id;private String name;private String price;public Product(String id, String name, String price) {this.id = id;this.name = name;this.price = price;}public String getId() {return id;}public String getName() {return name;}public String getPrice() {return price;}public static void main(String[] args) {Product product=new Product("1","测试","2");Product product2=new Product("2","测试","2");Solution solution=new Solution();solution.addProductToCart(product,5);solution.addProductToCart(product,2);solution.addProductToCart(product2,1);System.out.println(solution.cart);System.out.println(solution.getTotalAmount());}}
点赞 评论 收藏
分享
评论
点赞
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务