如何開啟OpenStackApi跨域請(qǐng)求CORS功能

今天就跟大家聊聊有關(guān)如何開啟OpenStack Api跨域請(qǐng)求CORS功能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

我們提供的服務(wù)有:成都網(wǎng)站制作、成都做網(wǎng)站、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、新民ssl等。為超過千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的新民網(wǎng)站制作公司

如果你打算在js中使用openstack接口(如jstack),就會(huì)碰到j(luò)s的跨域請(qǐng)求問題,解決方法是要在openstack api的response中加上Access-Control-Allow-Origin: *這樣的頭信息。

##反向代理 如果給api配置了反向代理,可以參考:http://enable-cors.org/server.html

##配置wsgi 幾乎所有的openstack api都使用了wsgi服務(wù),我們可以在wsgi這層設(shè)置CORS信息。

首先安裝一個(gè)python模塊

pip install wsgicors

###讓Keystone支持CORS 編輯/etc/keystone/keystone-paste.ini,新增如下內(nèi)容:

[filter:cors]
use = egg:wsgicors#middleware
policy = open
open_origin = *
open_headers = *
open_methods = *
open_maxage = 86400

然后,在每個(gè)pipeline的開頭加上cors,例如:

[pipeline:public_api]
pipeline = cors stats_monitoring sizelimit url_normalize build_auth_context token_auth admin_token_auth xml_body_v2 json_body ec2_extension user_crud_extension public_service

[pipeline:admin_api]
pipeline = cors sizelimit url_normalize build_auth_context token_auth admin_token_auth xml_body_v2 json_body ec2_extension s3_extension crud_extension admin_service

[pipeline:api_v3]
pipeline = cors stats_reporting sizelimit url_normalize build_auth_context token_auth admin_token_auth xml_body_v3 json_body ec2_extension_v3 s3_extension simple_cert_extension revoke_extension service_v3

[pipeline:public_version_api]
pipeline = cors sizelimit url_normalize xml_body public_version_service

[pipeline:admin_version_api]
pipeline = cors sizelimit url_normalize xml_body admin_version_service

最后重啟服務(wù)

service keystone restart

###讓nova-api支持CORS 編輯/etc/nova/api-paste.ini,新增如下內(nèi)容:

[filter:cors]
use = egg:wsgicors#middleware
policy = open
open_origin = *
open_headers = *
open_methods = *
open_maxage = 86400

然后,在每個(gè)pipeline的開頭加上cors,例如:

[composite:openstack_compute_api_v2]
use = call:nova.api.auth:pipeline_factory
noauth = cors compute_req_id faultwrap sizelimit noauth ratelimit osapi_compute_app_v2
keystone = cors compute_req_id faultwrap sizelimit authtoken keystonecontext ratelimit osapi_compute_app_v2
keystone_nolimit = cors compute_req_id faultwrap sizelimit authtoken keystonecontext osapi_compute_app_v2

[composite:openstack_compute_api_v21]
use = call:nova.api.auth:pipeline_factory_v21
noauth = cors request_id faultwrap sizelimit noauth osapi_compute_app_v21
keystone = cors request_id faultwrap sizelimit authtoken keystonecontext osapi_compute_app_v21

[composite:openstack_compute_api_v3]
use = call:nova.api.auth:pipeline_factory_v21
noauth = cors request_id faultwrap sizelimit noauth_v3 osapi_compute_app_v3
keystone = cors request_id faultwrap sizelimit authtoken keystonecontext osapi_compute_app_v3

最后重啟nova-api

service nova-api restart

看完上述內(nèi)容,你們對(duì)如何開啟OpenStack Api跨域請(qǐng)求CORS功能有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

名稱欄目:如何開啟OpenStackApi跨域請(qǐng)求CORS功能
鏈接分享:http://muchs.cn/article6/pphgig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站面包屑導(dǎo)航、網(wǎng)站制作、企業(yè)建站品牌網(wǎng)站制作、App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)