如何将邮递员历史记录从chrome应用程序复制到本机应用程序?

Gan*_*esh 2 google-chrome-extension google-chrome-app postman

由于Google现已终止对chrome应用程序的支持。最近,邮递员弃用了他们的Chrome应用,并推出了本机应用。

我正在从邮递员chrome应用程序切换到本机应用程序的过程中。

如何将历史记录从chrome应用程序复制到本机应用程序。同步无效。有一个导出数据的选项,但不导出历史记录。

有任何想法吗?

Gan*_*esh 5

因此,在搜索此内容时,我发现了这篇文章非常有帮助。感谢斯蒂芬分享此代码。请按照以下步骤将您的历史记录从chrome应用程序复制到本机应用程序。

//In Chrome DevTools on the background page of the Postman extension...

//A handy helper method that lets you save data from the console to a file
(function(console){

console.save = function(data, filename){

    if(!data) {
        console.error('Console.save: No data')
        return;
    }

    if(!filename) filename = 'console.json'

    if(typeof data === "object"){
        data = JSON.stringify(data, undefined, 4)
    }

    var blob = new Blob([data], {type: 'text/json'}),
        e    = document.createEvent('MouseEvents'),
        a    = document.createElement('a')

    a.download = filename
    a.href = window.URL.createObjectURL(blob)
    a.dataset.downloadurl =  ['text/json', a.download, a.href].join(':')
    e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null)
    a.dispatchEvent(e)
}
})(console)

//Common error reporting function
function reportError(){
console.error('Oops, something went wrong :-(');
}

//Open the database
var dbReq = indexedDB.open('postman')
dbReq.onerror = reportError;
dbReq.onsuccess = function(){
var db = dbReq.result;

//Query for all the saved requests
var requestReq = db.transaction(["requests"],"readwrite").objectStore('requests').getAll();
requestReq.onerror = reportError;
requestReq.onsuccess = function(){
	var requests = requestReq.result;
	
	//Dump them to a file
	console.save(JSON.stringify(requests), 'postman-requests-export.json')
	console.info('Your existing requests have been exported to a file and downloaded to your computer.  You will need to copy the contents of that file for the next part')
};
};


//Switch to standalone app and open the dev console

//Paste the text from the exported file here (overwriting the empty array)
var data = [] 

//Enter the guid/id of the workspace to import into.  Run the script with this value blank if you need some help
//  finding this value.  Also, be sure you don't end up with extra quotes if you copy/paste the value
var ws = ''; 

//Common error reporting function
function reportError(){
console.error('Oops, something went wrong :-(');
}

//Open the database
var dbReq = indexedDB.open('postman-app')
dbReq.onerror = reportError;
dbReq.onsuccess = function(){
var db = dbReq.result;

if(!data.length){
	console.error('You did not pass in any exported requests so there is nothing for this script to do.  Perhaps you forgot to paste your request data?');
	return;
}

if(!ws){
	var wsReq = db.transaction(["workspace"],"readwrite").objectStore('workspace').getAll();
	wsReq.onerror = reportError;
	wsReq.onsuccess = function(){
		console.error('You did not specify a workspace.  Below is a dump of all your workspaces.  Grab the guid (ID field) from the workspace you want these requests to show up under and include it at the top of this script');
		console.log(wsReq.result);
	}
	return;
}

data.forEach(function(a){
	a.workspace = ws;
	db.transaction(["history"],"readwrite").objectStore('history').add(a);
});

console.log('Requests have been imported.  Give it a second to finish up and then restart Postman')
}
//Restart Postman
Run Code Online (Sandbox Code Playgroud)

注意 :

1.要在Chrome应用上使用DevTools,您需要启用以下标记
chrome://flags 旗

2.然后右键单击并检查您的Chrome邮递员应用程序。

3.To本地应用程序ctrl + shift + I上的User DevTools(view-> showDevTools)