{"id":19916837,"url":"https://github.com/rubylouvre/mmrequest","last_synced_at":"2025-05-03T06:30:35.641Z","repository":{"id":11181476,"uuid":"13559093","full_name":"RubyLouvre/mmRequest","owner":"RubyLouvre","description":"avalon王之三柱臣 之一","archived":false,"fork":false,"pushed_at":"2016-08-25T07:21:58.000Z","size":1085,"stargazers_count":43,"open_issues_count":4,"forks_count":34,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-07T11:51:26.311Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RubyLouvre.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-10-14T11:10:01.000Z","updated_at":"2024-03-29T03:31:17.000Z","dependencies_parsed_at":"2022-08-27T22:42:20.648Z","dependency_job_id":null,"html_url":"https://github.com/RubyLouvre/mmRequest","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubyLouvre%2FmmRequest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubyLouvre%2FmmRequest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubyLouvre%2FmmRequest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubyLouvre%2FmmRequest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RubyLouvre","download_url":"https://codeload.github.com/RubyLouvre/mmRequest/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252154732,"owners_count":21702982,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T21:47:47.003Z","updated_at":"2025-05-03T06:30:35.112Z","avatar_url":"https://github.com/RubyLouvre.png","language":"JavaScript","readme":"mmRequest\n=========\n\nmmRequest 为异步 HTTP（AJAX）请求提供了解决方案。就像 `jQuery.ajax()` 所做的那样。\n\nmmRequest 是 avalon 三柱臣之一（另外两个是 route 和 animation）。\n\n\n安装\n------------\n\n从 [bower](http://bower.io/) 安装：\n\n```\nbower install mm-request\n```\n从npm 安装\n\n```\nnpm install mmRequest --save\n```\n开始\n------------\n\nAvalon 遵循 [AMD](https://github.com/amdjs/amdjs-api) 规范。在引入 `avalon.js` 和 `mmRequest.js` 之后，你便可以像下面这样使用 mmRequest 了：\n\n```javascript\nrequire(['./mmRequest'], function(avalon) {\n    avalon.ajax({\n        url: '/foobar'\n    });\n});\n```\n\n文档\n-------------\n\nmmRequest 提供了如下方法：\n\n```javascript\n/*\n * avalon.ajax 需要传入一个拥有类似 url、type、dataType、type 等属性的对象参数；\n * avalon.ajax 的行为类似于 jQuery.ajax。\n */\navalon.ajax(opts)\n\n/*\n * 其他一些简写方法：\n */\navalon.get( url [, data ] [, success(data, textStatus, XHR) ] [, dataType ] )\navalon.post( url [, data ] [, success(data, textStatus, XHR) ] [, dataType ] )\navalon.upload( url, form [,data] [, success(data, textStatus, XHR)] [, dataType])\navalon.getJSON( url [, data ] [, success( data, textStatus, jqXHR ) ] )\navalon.getScript( url [, success(script, textStatus, jqXHR) ] )\n\navalon可以在配置对象使用headers来指定头部, \n```javascript\navalon.ajax({\n\ttype: \"POST\",\n\turl: \"your-path\",\n\theaders: {\n      xxx: \"yyy\"\n\n   },\n   success: function(){}\n\n})\n\n```\n\n/*\n * 一些有用的工具类方法：\n */\n// 将一个对象转换成一个用于 URL 中传递请求参数的字符串\navalon.param(obj)\n// 将一个用于 URL 中传递请求参数的字符串转换成一个对象\navalon.unparam(str)\n// 将一个元素中的表单元素编码成字符串\navalon.serialize(element)\n```\n\n更多信息请参考 `/docs`。\n\n示例\n----\n\n安装依赖：\n\n```\ncd demo/ \u0026\u0026 npm install\n```\n\n如果你很幸运地在中国，试试 [cnpm](http://cnpmjs.org/)。\n\n开启服务：\n\n```\ncd ../ \u0026\u0026 npm start\n```\n\n现在，打开你的浏览器访问 `http://127.0.0.1:3000` 这个地址，你将会看到例子。你可以在 `demo/bin/www` 这个文件中配置端口。\n\n在测试跨域请求之前，你需要模拟一个跨域的环境。你可以将这个项目复制到另外的路径并用另一个端口开启服务作为后端服务（这个例子中，后端服务的端口是 `9000`）。\n\n祝你愉快。:grin:\n\n贡献\n------------\n\n请在 `src/` 目录下开发相应的模块。\n\nmmRequest 使用 [gulp](http://gulpjs.com/) 构建，请先安装依赖模块：\n\n```\nnpm install\n```\n\n然后开启 `gulp`，监听 `src/` 下的变化并自动合并文件至 `public/`：\n\n```\ngulp\n```\n\n更新日志\n------------\n\n见 [CHANGELOG.md](CHANGELOG.md)\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubylouvre%2Fmmrequest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frubylouvre%2Fmmrequest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubylouvre%2Fmmrequest/lists"}