RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-192261

Илья Бизунов's questions

Martin Hope
Илья Бизунов
Asked: 2020-04-24 02:39:09 +0000 UTC

无法以函数式风格重写代码

  • 1

出于纯粹的兴趣,我想以函数式风格实现这个命令式代码:

const _createArrayFromGroupObject = (groupObject) => {
  if (Array.isArray(groupObject))
    return groupObject

  const array = []
  for (const groupName in groupObject) {
    array.push([groupName, createArrayFromGroupObject(groupObject[groupName])])
  }
  return array
}

我试图这样做,但我遇到了堆栈溢出,我不明白问题是什么:

const objToArray = (groupObj) => 
  Object.keys(groupObj).reduce((arr, key) => [...arr, [key, objToArray(groupObj[key])]], [])

const createArrayFromGroupObject = (groupObj) => 
  Array.isArray(groupObj) ? groupObj : objToArray(groupObj)

沙盒:

const objToArray = (groupObj) => 
  Object.keys(groupObj).reduce((arr, key) => [...arr, [key, objToArray(groupObj[key])]], [])

const createArrayFromGroupObject = (groupObj) => 
  Array.isArray(groupObj) ? groupObj : objToArray(groupObj)

const _createArrayFromGroupObject = (groupObject) => {
	if (Array.isArray(groupObject))
  	return groupObject
  
  const array = []
  for (const groupName in groupObject) {
  	array.push([groupName, createArrayFromGroupObject(groupObject[groupName])])
  }
  return array
}

const groupObject = {"teacher":{"Peter":{"20":{"married":[{"name":"Peter","profession":"teacher","age":20,"maritalStatus":"married"},{"name":"Peter","profession":"teacher","age":20,"maritalStatus":"married"}]}},"Michael":{"50":{"single":[{"name":"Michael","profession":"teacher","age":50,"maritalStatus":"single"}]}}},"scientific":{"Anna":{"20":{"married":[{"name":"Anna","profession":"scientific","age":20,"maritalStatus":"married"}],"single":[{"name":"Anna","profession":"scientific","age":20,"maritalStatus":"single"}]}},"Rose":{"50":{"married":[{"name":"Rose","profession":"scientific","age":50,"maritalStatus":"married"}]}}},"politician":{"Anna":{"50":{"married":[{"name":"Anna","profession":"politician","age":50,"maritalStatus":"married"}]}}}}

console.log(_createArrayFromGroupObject(groupObject))
/* console.log(createArrayFromGroupObject(groupObject)) */

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-05-17 02:48:58 +0000 UTC

Docker 容器中的 Nginx 仅显示起始页

  • 1

在帮助下docker-compose up,我运行以下配置:

web:
    image: nginx:latest
    ports:
        - "8080:80"
    volumes:
        - /home/ilya/projects/main:/code
        - /home/ilya/projects/main/site.conf:/etc/nginx/conf.d/site.conf
    links:
        - php
        - mysql

php:
    # docker-php-ext-install pdo pdo_mysql --- need exec this
    image: php:7-fpm
    volumes:
        - /home/ilya/projects/main:/code
    links:
        - mysql

mysql:
    image: mysql:5.7
    ports:
        - 3306:3306
    environment: 
        - MYSQL_ROOT_PASSWORD=pass

phpmyadmin:
    image: phpmyadmin/phpmyadmin
    links:
        - mysql:db
    ports:
        - "8082:80"
    environment:
        - PMA_USER=root
        - PMA_PASSWORD=pass
        - PHP_UPLOAD_MAX_FILESIZE=100MB

然后,将以下 Nginx 配置放在项目目录中:

server {
    index index.php;
    server_name dune.com pro.dune.com;
    error_log  /var/log/nginx/error.log;
    access_log /var/log/nginx/access.log;
    root /code;

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass php:9000;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }
}

一切正常,但只打开起始页。当试图打开任何其他:

404 未找到

如何修复 nginx 配置以打开像 dune.com/hello 这样的 URL?

php
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-02-26 21:22:09 +0000 UTC

无法在 React-app 中使用 Telegram 登录小部件

  • 1

我有一个这样的小部件:

import React from 'react';
import PropTypes from 'prop-types';

class TelegramLoginButton extends React.Component {
  componentDidMount() {
    const { botName, size, requestAccess, showUserPic, callbackOnAuth } = this.props;
    window.TelegramLoginWidget = {
      callbackOnAuth: user => callbackOnAuth(user)
    };
    const script = document.createElement('script');
    script.src = 'https://telegram.org/js/telegram-widget.js?2';
    script.setAttribute('data-telegram-login', botName || 'samplebot');
    script.setAttribute('data-size', size || 'large');
    script.setAttribute('data-request-access', requestAccess || 'write');
    script.setAttribute('data-userpic', !showUserPic);
    script.setAttribute('data-onauth', 'TelegramLoginWidget.callbackOnAuth(user)');
    script.async = true;
    this.instance.appendChild(script);
  }

  render() {
    return (
      <div ref={component => this.instance = component}>
        {this.props.children}
      </div>
    );
  }
}

TelegramLoginButton.propTypes = {
  callbackOnAuth: PropTypes.func.isRequired,
  botName: PropTypes.string.isRequired,
  size: PropTypes.oneOf(['small', 'medium', 'large']),
  requestAccess: PropTypes.oneOf(['write']),
  showUserPic: PropTypes.bool
};

export default TelegramLoginButton;

使用时会弹出如下错误:

拒绝在框架中显示“ https://oauth.telegram.org/embed/ld_notify_test_bot?origin=http%3A%2F%2Ftelegram.comments%3A8080&size=large&userpic=true&request_access=write ”,因为祖先违反了以下内容安全策略指令:“框架祖先http://telegram.comments ”。

应用程序本身正在旋转:http://telegram.comments:8080/在机器人设置中,域http://telegram.comments:8080/被指定

问题是什么?域名被交换了,应该没有任何问题。

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-01-23 22:47:06 +0000 UTC

想不出规律

  • 2

我不明白为什么正则表达式不适用于最后一行?

[^a-zA-Zа-яА-Я]уфа([^a-zA-Zа-яА-Я]|$)

Manufacturing
asdasdуфаавпвап     true
!!! ...уфа... !!!!! true
sdf уфа             true
уфа                 false

这里可以戳互动版:https ://regex101.com/r/9fNMkj/1

регулярные-выражения
  • 3 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-12-02 04:23:22 +0000 UTC

似乎无法添加常规

  • 1

有一段文字:

[asdasd|asda sdas] asdasd fneughwegh [4ghehrh|gfebgubegoe] sdfsdfsf

我需要从中得到:

[asdasd|asda sdas]
[4ghehrh|gfebgubegoe]

我写了这个正则表达式:\[.*\|.*\]

它返回这个:[asdasd|asda sdas] asdasd fneughwegh [4ghehrh|gfebgubegoe]

那些。带第一个括号,最后一个括号。为什么?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-11-14 22:57:30 +0000 UTC

如何在 CSS 中将所有图像裁剪到其中一个的最小高度?

  • 1

.photos-line {
  column-count: 6;
  column-gap: 1em;
}

.photos-line .photo img {
  object-fit: cover;
  max-width: 100%;
  max-height: 100%;
}
<div class="photos-line">
  <div class="photo">
    <img src="https://scontent.cdninstagram.com/t51.2885-15/s640x640/e35/22860491_293564051135946_1431999210961502208_n.jpg">
  </div>
  <div class="photo">
    <img src="https://scontent.cdninstagram.com/t51.2885-15/s640x640/e35/23347493_138848026766173_4147715403113562112_n.jpg">
  </div>
  <div class="photo">
    <img src="https://scontent.cdninstagram.com/t51.2885-15/e35/p320x320/23498171_1512204415482005_7319427710441226240_n.jpg">
  </div>
  <div class="photo">
    <img src="https://scontent.cdninstagram.com/t51.2885-15/e35/p320x320/22802639_866024183566278_671520314278019072_n.jpg">
  </div>
  <div class="photo">
    <img src="https://scontent.cdninstagram.com/t51.2885-15/s640x640/e35/22857687_133137560679761_5651001970152964096_n.jpg">
  </div>
  <div class="photo">
    <img src="https://scontent.cdninstagram.com/t51.2885-15/e35/p320x320/22710622_149419199004478_4851274197734785024_n.jpg">
  </div>
</div>

在此示例中,图像具有不同的高度。问题 - 如何使其相同(最小)?

css
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-10-28 23:50:23 +0000 UTC

无法导出类

  • 0

我正在为自己编写一个简单的 fetch 包装器。按照计划,应该有一个Call具有两个静态方法的类 -get和post.

我试着这样写:

var fetch = require('node-fetch');

class Call {
  static async get(url, params = {}) {
    ...
  }
  static async post(url, params = {}) {
    ...
  }
}

module.export = Call; 

像这样:

var fetch = require('node-fetch');

module.export = {
  get: async (url, params = {}) => {
    ...
  },
  post: async (url, params = {}) => {
    ...
  }
}

我正在尝试使用:

const Call = require('./utils/call');
console.log(Call.get('https://jsonplaceholder.typicode.com/posts'));

我得到:

console.log(Call.get('https://jsonplaceholder.typicode.com/posts'));
                 ^

TypeError: Call.get is not a function
    at Object.<anonymous> (/Users/ilabizunov/Events/server/parser/parser.js:5:18)
    at Module._compile (module.js:612:30)
    at Object.Module._extensions..js (module.js:623:10)
    at Module.load (module.js:531:32)
    at tryModuleLoad (module.js:494:12)
    at Function.Module._load (module.js:486:3)
    at Function.Module.runMain (module.js:653:10)
    at startup (bootstrap_node.js:187:16)
    at bootstrap_node.js:608:3
javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-10-28 00:09:25 +0000 UTC

异步/等待问题

  • 1

我试图从承诺爬升到一个主题,它不起作用:

async function vkApiCall(method, params) {
  params['access_token'] = params['access_token'] || VK_APP_TOKEN;
  const params = Object.keys(params).map(k => `${encodeURIComponent(k)}=${encodeURIComponent(params[k])}`).join('&');
  const response = await fetch(`https://api.vk.com/method/${method}?${params}`);
  return await response.json();
}

function loadVkCities() {
  const data = await vkApiCall('database.getCitiesById', {
    country_id: 1,
    need_all: 1
  });
  console.log(data);
}

给出错误消息:

const data = await vkApiCall('database.getCitiesById', {
                   ^^^^^^^^^

SyntaxError: Unexpected identifier
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)
    at Module._compile (module.js:576:28)
    at Object.Module._extensions..js (module.js:623:10)
    at Module.load (module.js:531:32)
    at tryModuleLoad (module.js:494:12)
    at Function.Module._load (module.js:486:3)
    at Function.Module.runMain (module.js:653:10)
    at startup (bootstrap_node.js:187:16)
    at bootstrap_node.js:608:3
javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-10-26 01:32:35 +0000 UTC

如果父进程死了,子进程会死吗?

  • 2

有一个 PHP 守护程序从控制台运行并执行很多分叉。

如果我在控制台中输入 ctrl+^c,会发生什么?结束所有子进程和父进程?

php
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-10-04 00:01:57 +0000 UTC

在 React 应用程序中跟踪错误

  • 0

有一个反应应用程序(浏览器扩展)。我想跟踪用户使用它时发生的错误。怎么做?可以为此使用哪些服务/技术?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-08-30 21:22:21 +0000 UTC

为什么发送两个请求而不是一个?[关闭]

  • 0
关闭 这个问题是题外话。目前不接受回复。

寻求调试帮助的问题(“为什么这段代码不起作用? ”)应该包括期望的行为、具体的问题或错误,以及在问题中重现它的最少代码。没有明确描述问题的问题对其他访问者毫无用处。请参阅如何创建一个最小的、独立的和可重现的示例。

5年前关闭。

改进问题

我正在用 React 编写一个应用程序,使用 Fetch 从服务器获取数据。在 chrome 中,这就是图片: 在此处输入图像描述 我看到的不是一个请求,而是两个,但类型不同。fetch 类型的请求很快,而 json 类型的请求很慢。

问题 - 为什么有两个请求?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-08-29 19:53:00 +0000 UTC

如何强制为扩展绘制 chrome“灰色”图标?

  • 3

在某些情况下,我需要扩展图标变为“灰色”。我找不到强制 chrome 绘制这样一个图标的方法。

重要的一点——“灰色”图标——这正是 chrome 的特点。那些。我对带有正常和灰色的准备好的图标的选项不感兴趣。

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-07-13 02:57:51 +0000 UTC

fetch - 无法执行简单查询

  • 1

localhost:3000 - 反应客户端

localhost:8080 - NodeJS 服务器

我编写了以下类来调用服务器 API 方法:

import React, { Component } from 'react';

class Server {
  static call(apiMethod, params = {}, httpMethod = 'POST') {
    return fetch('http://localhost:8080/' + apiMethod, {
      mode: 'no-cors',
      method: httpMethod,
      body: params
    });
  }
}

export default Server;

我正在尝试使用它:

process() {
  let method = this.state.mode;
  Server.call(method, {
    name: this.state.user,
    password: this.state.password
  }).then(function(response) {
    console.log(response);
  }).then(function(data) {
    console.log(data);
  });
}

在控制台中我得到:响应示例

我不明白这是什么问题?如何从服务器获得响应?

javascript
  • 2 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-07-09 17:06:54 +0000 UTC

是否可以获取当前活动窗口的进程名称?

  • 3

我想为自己编写一个简单的服务来跟踪我白天使用的程序以及我在这些程序上花费了多少时间。

我如何想象这样一个程序的工作?我有一个在我的 PC 后台运行的程序,它将监视当前的活动窗口以及它处于活动状态的程度。这种类型的数据将被发送到服务器:

Процесс       Был активен
phpstrom.exe  3600

好吧,那么这些数据就会以图表的形式展现出来。

问题 - 是否可以在 C# 中实现?不幸的是,我没有为 Windows 开发软件的经验,所以我不知道我需要使用什么。您能否建议一种技术和示例来说明如何获取当前活动窗口的进程名称?

c#
  • 2 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-04-04 20:04:00 +0000 UTC

用户机器识别

  • 1

是否可以使用JS确定用户的设备?你必须使用什么样的数据并不重要,最重要的是你可以将一个用户与另一个用户区分开来。

javascript
  • 2 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-01-24 01:29:31 +0000 UTC

表达式可以简化吗?

  • 1
response.data !== undefined && response.data.length > 0

条件应检查:

  1. “数据”数组是否存在?
  2. 它有意义吗?
javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-11-20 20:45:48 +0000 UTC

无法加载图片

  • 1

这是我上传图片的方式:

function loadSourcesImage(sources) {

    function getBase64Image(img) {
        var canvas = document.createElement("canvas"); // remove?
        canvas.width = img.width;
        canvas.height = img.height;

        var ctx = canvas.getContext("2d");
        ctx.drawImage(img, 0, 0);

        return canvas.toDataURL();
    }

    return $q(function(resolve, reject) {
        var promises = [];
        angular.forEach(sources, function(source) {
            promises.push($q(function(resolve, reject) {
                var imageObj = new Image();
                imageObj.crossOrigin = "anonymous";
                imageObj.onload = function() {
                    source.photo = getBase64Image(imageObj);
                    resolve(); 
                };
                imageObj.src = source.photo;
            }));
        });
        $q.all(promises).then(function() {
            resolve();
        });
    });
}

但周期性地,并非所有图片,都会出现以下错误:

从来源“ https://pp.vk.me/c837437/v837437845/740e/jErhvWmSCW8.jpg ”访问图像已被 CORS 策略阻止:无“访问控制” -Allow-Origin' 标头出现在请求的资源上。因此不允许访问源“ http://localhost:8000 ”。

你怎么能摆脱它?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-11-07 21:54:15 +0000 UTC

在 AngularJS 项目中缩小 HTML 的问题

  • 0

有这个 HTML:

<div class="footer">
    <div class="tools">
        <a role="button" class="material-button" href="{{item.url}}" target="_blank">
            <i class="icon fa fa-file-text"></i> Запись
        </a>
        <button type="button" class="material-button" ng-click="copyPost(item)">
            <i class="icon fa fa-clipboard"></i> Копировать
        </button> 
        <share url="{{item.url}}" title="{{item.source.name}}" description="{{item.text}}"></share>
    </div>
</div>

共享组件 HTML 模板:

<div class="share-block">
    <a class="material-button share vk" target="_blank" href="{{vk}}"><i class="fa fa-vk"></i></a>
    <a class="material-button share fb" target="_blank" href="{{fb}}"><i class="fa fa-facebook"></i></a>
    <a class="material-button share ok" target="_blank" href="{{ok}}"><i class="fa fa-odnoklassniki"></i></a>
    <a class="material-button share gp" target="_blank" href="{{gp}}"><i class="fa fa-google-plus"></i></a>
</div>

在浏览器中它看起来像这样: 在此处输入图像描述

缩小 HTML 后,它看起来像这样: 在此处输入图像描述

据我了解,这是由于在缩小过程中删除了空格。我查看了生成的缩小 HTML 以找出答案。通常,令我惊讶的是,共享组件中的 <a> 标记之间有空格。div 中的 <a> 和 <button> 标签之间tools没有空格。

向我解释这里的逻辑在哪里,如何解决这个问题?毕竟,理论上,那里应该有一个空格,因为它在 <a> 标记之间的共享组件中。

Grunt,grunt-angular-templates。

html
  • 2 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-11-07 16:12:31 +0000 UTC

div之间的padding是从哪里来的?

  • 1

我有两个 div -material-list-item-icon和material-list-item-text. 我没有在它们之间设置缩进,但是有一个。

问题 - 缩进从何而来?

.material-list {
    margin-bottom: 7px;
}

.material-list-item {
    padding: 10px; 
    cursor: pointer;
}

.material-list-item-icon {
    display: inline-block;
}

.material-list-item-text {
    display: inline-block;
}
<div class="material-list ng-scope">
            <div class="material-list-item ng-scope">
                <div class="material-list-item-icon"><img class="material-image" src="https://pp.vk.me/c626429/v626429251/31025/1CukNdQDa-M.jpg"></div>
                <div class="material-list-item-text ng-binding">1</div>
            </div>
            <div class="material-list-item ng-scope">
                <div class="material-list-item-icon"><img class="material-image" src="https://pp.vk.me/c636628/v636628495/2f5cb/sOnZ_ZNIpfc.jpg"></div>
                <div class="material-list-item-text ng-binding">2</div>
            </div>
            <div class="material-list-item ng-scope">
                <div class="material-list-item-icon"><img class="material-image" src="https://pp.vk.me/c837221/v837221670/4577/K1a81HtnbUw.jpg"></div>
                <div class="material-list-item-text ng-binding">3</div>
            </div>
        </div>

html
  • 1 个回答
  • 10 Views
Martin Hope
Илья Бизунов
Asked: 2020-11-04 00:51:19 +0000 UTC

为什么下面的按钮不一样?

  • 2

我想编写 CSS 来制作类似于材料设计的按钮button。a写了样式,但是如果你给元素应用样式a,那么它就变button低了一个像素。为什么?

.material-button {
    display: inline-block;
    background-color: #507299;
    border: none;
    border-radius: 2px;
    
    padding-left: 16px;
    padding-right: 16px;

    height: 36px;
    line-height: 36px;
    white-space: nowrap;

    font-family: RobotoMedium;
    font-size: 14px;
    /*text-align: center;*/
    text-transform: uppercase;
    color: #ffffff;
}

.material-button:hover,
.material-button:visited,
.material-button:link,
.material-button:active {
    color: #ffffff;
    text-decoration: none;
}
<a role="button" class="material-button" >
  Запись
</a>

<button type="button" class="material-button" >
  Копировать
</button>

html
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5