Add User-Agent header (#2602)
This commit is contained in:
parent
921609cab1
commit
5b039a1bee
|
@ -7,6 +7,7 @@ import { URL } from 'url';
|
||||||
import * as yaml from 'js-yaml';
|
import * as yaml from 'js-yaml';
|
||||||
import { Source, Mixin } from './types';
|
import { Source, Mixin } from './types';
|
||||||
import isUrl = require('is-url');
|
import isUrl = require('is-url');
|
||||||
|
const pkg = require('../../package.json');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Path of configuration directory
|
* Path of configuration directory
|
||||||
|
@ -43,6 +44,7 @@ export default function load() {
|
||||||
mixin.stats_url = `${mixin.scheme}://${mixin.host}/stats`;
|
mixin.stats_url = `${mixin.scheme}://${mixin.host}/stats`;
|
||||||
mixin.status_url = `${mixin.scheme}://${mixin.host}/status`;
|
mixin.status_url = `${mixin.scheme}://${mixin.host}/status`;
|
||||||
mixin.drive_url = `${mixin.scheme}://${mixin.host}/files`;
|
mixin.drive_url = `${mixin.scheme}://${mixin.host}/files`;
|
||||||
|
mixin.user_agent = `Misskey/${pkg.version} (${config.url})`;
|
||||||
|
|
||||||
if (config.localDriveCapacityMb == null) config.localDriveCapacityMb = 256;
|
if (config.localDriveCapacityMb == null) config.localDriveCapacityMb = 256;
|
||||||
if (config.remoteDriveCapacityMb == null) config.remoteDriveCapacityMb = 8;
|
if (config.remoteDriveCapacityMb == null) config.remoteDriveCapacityMb = 8;
|
||||||
|
|
|
@ -114,6 +114,7 @@ export type Mixin = {
|
||||||
status_url: string;
|
status_url: string;
|
||||||
dev_url: string;
|
dev_url: string;
|
||||||
drive_url: string;
|
drive_url: string;
|
||||||
|
user_agent: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type Config = Source & Mixin;
|
export type Config = Source & Mixin;
|
||||||
|
|
|
@ -27,6 +27,7 @@ export default (user: ILocalUser, url: string, object: any) => new Promise((reso
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
path: pathname + search,
|
path: pathname + search,
|
||||||
headers: {
|
headers: {
|
||||||
|
'User-Agent': config.user_agent,
|
||||||
'Content-Type': 'application/activity+json',
|
'Content-Type': 'application/activity+json',
|
||||||
'Digest': `SHA-256=${hash}`
|
'Digest': `SHA-256=${hash}`
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import * as request from 'request-promise-native';
|
import * as request from 'request-promise-native';
|
||||||
import * as debug from 'debug';
|
import * as debug from 'debug';
|
||||||
import { IObject } from './type';
|
import { IObject } from './type';
|
||||||
//import config from '../../config';
|
import config from '../../config';
|
||||||
|
|
||||||
const log = debug('misskey:activitypub:resolver');
|
const log = debug('misskey:activitypub:resolver');
|
||||||
|
|
||||||
|
@ -51,6 +51,7 @@ export default class Resolver {
|
||||||
const object = await request({
|
const object = await request({
|
||||||
url: value,
|
url: value,
|
||||||
headers: {
|
headers: {
|
||||||
|
'User-Agent': config.user_agent,
|
||||||
Accept: 'application/activity+json, application/ld+json'
|
Accept: 'application/activity+json, application/ld+json'
|
||||||
},
|
},
|
||||||
json: true
|
json: true
|
||||||
|
|
|
@ -34,7 +34,12 @@ export default async (url: string, user: IUser, folderId: mongodb.ObjectID = nul
|
||||||
// write content at URL to temp file
|
// write content at URL to temp file
|
||||||
await new Promise((res, rej) => {
|
await new Promise((res, rej) => {
|
||||||
const writable = fs.createWriteStream(path);
|
const writable = fs.createWriteStream(path);
|
||||||
request(url)
|
request({
|
||||||
|
url,
|
||||||
|
headers: {
|
||||||
|
'User-Agent': config.user_agent
|
||||||
|
}
|
||||||
|
})
|
||||||
.on('error', rej)
|
.on('error', rej)
|
||||||
.on('end', () => {
|
.on('end', () => {
|
||||||
writable.close();
|
writable.close();
|
||||||
|
|
Loading…
Reference in New Issue