CouchDB从XMLHttpRequest跨域访问?

2023-11-22

目前,Web 应用程序需要提供某种跨域 HTTP 标头来访问其他域上的数据:http://openfontlibrary.org/wiki/Web_Font_linking_and_Cross-Origin_Resource_Sharing

有没有办法配置CouchDB支持无限制的跨域访问? (它可能在内部使用 apache httpd)我仅使用 db 内部用途。


我发现解决这个问题的最简单方法是使用本地安装阿帕奇网络服务器已启用模组代理模块并配置代理通行证指示。

让我们从基本设置开始

  • 我安装了 Apache Web 服务器http://127.0.0.1:8181,尚未配置
  • 我已经安装了 CouchDBhttp://127.0.0.1:5984/
  • I have 索引.html部署在 Apache 上:http://localhost:8181/couchdb.html.

index.html 有以下内容

<html>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">

var http = XMLHttpRequest();
http.open('GET', 'http://127.0.0.1:5984/_all_dbs', true); // ! WE WILL CHANGE THIS LINE
http.onreadystatechange = function() {
    if (http.readyState == 4 && http.status == 200) {
        console.debug('it works');
    }
};
http.send(null)
</script>
<head><title>Test Access to CouchDB</title></head>
<body>
</body>
</html>

如果您现在尝试,由于跨域问题,它将无法工作(在本例中,端口与 8181 != 5984 不匹配)。

如何修复它

  • configure Apache (apache_home/conf/httpd.conf)
    • 取消注释LoadModule proxy_module modules/mod_proxy.so
    • 取消注释LoadModule proxy_http_module modules/mod_proxy_http.so
    • add ProxyPass /couchdb http://127.0.0.1:5984(作为顶级属性,如 ServerAdmin)
    • 重新启动阿帕奇
  • modify index.html
    • replace http.open('GET', 'http://127.0.0.1:5984/_all_dbs', true); with http.open('GET', '/couchdb/_all_dbs', true);

现在尝试,您应该在 javascript 控制台中看到“它有效”输出(我使用了 Firebug 控制台)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CouchDB从XMLHttpRequest跨域访问? 的相关文章

  • couchdb:设计文档中的地图给出了compilation_error

    我在 Debian 测试中使用 Couchdb 1 1 1 我在数据库中有这个设计文档 id design Page rev 9 1944cdebabf20ae569eab7b534b43e67 views all map function
  • 使用 jQuery 的 MediaWiki API 没有响应

    我尝试从 Wikipedia 获取一些 JSON 内容 getJSON http en wikipedia org w api php action query prop revisions rvprop content titles ti
  • 如何在AngularJS中正确使用HTTP.GET?具体来说,对于外部 API 调用?

    我在controller js中有以下代码 var myApp angular module myApp myApp service dataService function http delete http defaults header
  • 跨域属性的目的...?

    在图像和脚本标签中 我的理解是您可以访问其他域上的脚本和图像 那么什么时候使用这个属性呢 这是当您想要限制其他人访问您的脚本和图像的能力时吗 Images https developer mozilla org en US docs Web
  • 同一台服务器的不同端口是否算跨域? (Ajax 方面)

    XMLHttpRequest 可以发送请求到http mydomain example 81 from http mydomain example 对于被视为具有相同来源的两个文档 协议 http https 域和端口 默认 80 或 xx
  • CouchDb 单个文档的大小限制是多少

    我对文档存储复杂的数据结构有疑问 该数据结构可能会有所不同 文档需要完整存储和检索 需要提供文档搜索字段 我开始在 MongoBb 中存储文档 但那里的文档大小限制为 16 MB 这对我来说不够 CouchDb 允许的单个文档的最大大小是多
  • 与 Post 进行交叉呼叫,但在飞行前失败

    我必须从我的网站向第三方域 服务器进行网络服务调用 当我使用 jQuery Ajax by Post 方法和 content type text plain 进行此调用时 它工作正常 但是 当我将其更改为 content type text
  • Camel JAX-RS 和跨域请求

    我希望能够在我的本地 Camel 实例上执行 HTTP 请求 仅出于开发目的 我知道这是不好的做法 现在 我坚持 Origin http localhost 8000 is not allowed by Access Control All
  • 从只读 couchdb 复制

    我有一台服务器 其中包含一个 couchdb 数据库 其中包含我的应用程序所需的信息 它包含几兆字节的内容 一些每天都会变化的文档 添加最新新闻 删除旧文档 更新一些文档 应用程序会尽可能与服务器数据库同步 以便离线使用此信息 然而 这些信
  • JavaScript 文件中的代码如何获取文件的 URL?

    我需要将 CSS 样式表动态加载到位于不同的领域 如何获取 JS 文件的完整 URL 以在href样式表的属性 例如 结构如下 http bla com js script js http bla com css style css 我想将
  • JQuery - $.ajax() - 使用 JSONP 跨源 - 仅在 IE 8 中获取“parsererror”(在 IE 7 中工作)

    我有以下代码来执行跨域请求并获取 JSONP 数据 通过回调方法包装的 JSON 我已经验证我使用包装 JSON 数据的回调方法正确获得了响应 它在 IE7 中工作得很好 回调 cb 被调用 但在 IE8 中则不然 document rea
  • AngularJS 和 Laravel - 跨域 CORS / XHR 请求缺少(记住)cookie

    当我不使用 Chrome 中的 disable web security 选项时 我的 CORS XHR 请求在请求标头中缺少 Remember xyz cookie 如果我启用该选项 remember xyz cookie 将包含在请求标
  • Silverlight WCF服务跨域问题

    我有一个 silverlight 应用程序 托管在 Intranet mydomain net 和一个 WCF 服务 webservices mydomain net 我需要跨站点策略文件吗 如果是这样 只允许从 Intranet mydo
  • 从本地 html/javascript 网站插入 mySQL 数据库

    我正在尝试做什么 我的程序的目的是插入数据local HTML JS网站变成online 非本地 mySQL数据库 到目前为止我尝试过的 我试图用来实现此目的的原始方法是让我的本地网站使用 javascript 通过在线发布数据PHP文件
  • CouchDB 中的分页?

    我将如何实现分页所需的查询 基本上 当请求第 1 页时 获取前 5 个条目 对于第 2 页 获取接下来的 5 页 依此类推 我计划通过 couchdb python 模块使用它 但这不会对实现产生任何影响 The CouchDB 指南 ht
  • Rails、REST 架构和 HTML 5:带有预检请求的跨域请求

    在致力于使我们的网站 HTML 5 友好的项目时 我们渴望采用跨域请求的新方法 不再通过隐藏的 iframe 发布 使用访问控制 http www w3 org TR access control 根据规范 我们开始设置一些测试来验证各种浏
  • 跨域XMLHttp请求

    这是我的情况 我有一台 Web 服务器机器 一台客户端机器和第三台运行一些侦听 XMLHttpRequest 的程序的机器 客户端从客户端计算机访问网络服务器 进行一些更改 然后单击 保存 此时 数据被发送回网络服务器和第三台机器 所有这些
  • jQuery PUT ajax 请求不起作用

    我正在尝试在 couchdb 中保存 Backbone 模型 因此我已经覆盖了save向 couchdb 发出 ajax 请求的方法 ajax type PUT url http 127 0 0 1 5984 movies this get
  • 使用 Firefox 插件发出跨域 ajax 请求

    我对如何在 Firefox 插件中发出跨域 ajax 请求感到有点困惑 LastPass 和 Xmarks 等插件建议你可以做到这一点 但是当我尝试用 google 搜索你是如何做到这一点时 每个人似乎都说你不能 除非用户在 Firefox
  • 如何为WCF服务添加跨域支持

    我试图允许从托管在 localhost 80 的 javascript 应用程序向托管在不同端口的 WCF RStful 服务发出 POST 请求 但不知何故它不起作用 我尝试将自定义属性添加到标头 以及以编程方式将其添加到我的服务中JSO

随机推荐

  • 跨数据库外键错误

    这是我的第一个数据库 DB1 的模型 from django db import models class Company models Model name models CharField max length 100 null Tru
  • 初始化 Objective-C 类别中的静态变量

    我试图创建一个静态变量来存储图像字典 不幸的是 我能找到的初始化它的最好方法是检查使用该变量的每个函数 由于我是在类别内创建此变量 因此我不能仅在初始化程序内初始化它 有没有更简洁的方法来初始化 navigationBarImages st
  • Typescript:对象和基元之间的 keyof typeof union 始终是 never

    首先 我的问题的一些背景信息 我有一个项目 在其中我通过 Socket IO 接收一个对象 因此我没有关于它的类型信息 此外 它是一种相当复杂的类型 因此需要进行大量检查以确保接收到的数据良好 问题是我需要访问由接收到的对象中的字符串指定的
  • 不(最大宽度:512px)不工作

    我有以下 HTML 页面 Foobar 但是 这对窗口没有响应width 媒体规则从未适用 如果我删除not 它按预期工作 我不明白什么not max width 是的 我知道还有其他方法可以完成同样的事情 并且not max width
  • 角度单元测试失败,但不是本地测试

    升级到 Angular 版本 11 后 Travis CI 上的单元测试现在失败 在本地 它们确实成功了 即使在使用相同的节点 nvm 和 npm 版本进行全新安装之后 所有单元测试的错误都是相同的 Failed fn bind is no
  • Java Regex 从 HTML 锚点 (...) 标记获取文本

    我正在尝试获取某个标签内的文本 所以如果我有 a href http something com Found a a 我希望能够检索Found text 我正在尝试使用正则表达式来做到这一点 我能够做到 如果 a href a a gt 我
  • 显示 w.r.t. 的语义转义字符

    考虑以下示例 gt ghci 外壳 gt writeFile d show d cat d d gt writeFile d d cat d d gt writeFile backslash show cat backslash gt wr
  • Python - 不支持的类型:范围和范围

    我在尝试运行脚本时遇到这个奇怪的错误 代码似乎是正确的 但似乎 python 3 不喜欢这部分 def function x if integer return int x else return x non nil randrange 2
  • 避免内存泄漏/使用 Javascript

    我是 jQuery 的新手 我有点困惑这是否正常或可能导致内存泄漏 代码如下 在某些日期过滤器上为每个新值调用此方法 function preapreTooltip chart var tickLength chart xAxis 0 ti
  • linux uinput:简单的例子?

    我在获取时遇到一些问题both代码的两侧使用uinput在职的 Based on Getting started with uinput the user level input subsystem dead link archived I
  • 如何将PictureBox.Image保存到文件?

    我使用以下命令将 jpgImage 写入 PictureBox Image var jpgImage new Byte jpgImageSize pictureBox Image new Bitmap new MemoryStream jp
  • 如何使用 Spring 通过 OAuth2 保护 MVC 应用程序?

    对不起 我的英语 我有一个可以以通常方式登录的应用程序 Configuration EnableWebSecurity public class LoginSecurityConfig extends WebSecurityConfigur
  • 无法编译android studio项目

    我想在我的项目中添加一个materialdrawer库 当我添加依赖项时 我的 build gradle 看起来像这样 dependencies compile fileTree dir libs include jar compile c
  • Dockerized Rails 5 RC1 应用程序未获取正在开发的控制器和模型的更新

    我在 Mac OS X Docker Machine Docker Compose 上开发 Rails 4 应用程序有相当多的经验 但是 Rails 5 在开发环境中缓存文件的方式发生了一些变化 目前正在使用 RC1 进行测试 启动应用程序
  • 围绕零值自动构建色彩图

    我经常想绘制一张范围从负数到正数的差异图像 问题在于 matlab 的颜色图仅从最小值到最大值缩放 但不关心某些中间值 本例为零 例如 我制作了peaks具有单个像素不同的图像 原来的样子是这样的 所以零值在顶部图像是蓝色的 在底部是绿色的
  • 当 help() 列出方法签名时,斜杠意味着什么?

    什么是 Python 3 4 中的意思help输出为range右括号之前 gt gt gt help range Help on class range in module builtins class range object range
  • 三角形连接区域

    考虑以下形状 灰色区域是外部容器 忽略这一点 白色区域是一个链接 a tag 红色三角形区域是另一个链接 a tag 我使用以下代码为红色区域创建了一个 CSS 三角形 ribbon position absolute right 0 bo
  • 从简单 HTTP 服务器中的每个文件中删除 .html 扩展名

    我想做到这一点 以便当有人访问我的 Go HTTP 服务器上的页面时 他们不会看到 html扩大 例如 当他们访问时https example org test他们会看到的内容https example org test html My c
  • 创建/获取自定义 kubernetes 资源

    我想用 go 创建一个自定义的 kubernetes 资源 该应用程序部署在kubernetes集群中 我想创建例如以下资源 apiVersion configuration konghq com v1 kind KongPlugin me
  • CouchDB从XMLHttpRequest跨域访问?

    目前 Web 应用程序需要提供某种跨域 HTTP 标头来访问其他域上的数据 http openfontlibrary org wiki Web Font linking and Cross Origin Resource Sharing 有